android图标上面添加数字(2)
来源:未知 责任编辑:责任编辑 发表时间:2014-05-10 12:23 点击:次
* @param resId
* @return
*/
private Bitmap getResIcon(Resources res,int resId){
Drawable icon=res.getDrawable(resId);
if(icon instanceof BitmapDrawable){
BitmapDrawable bd=(BitmapDrawable)icon;
return bd.getBitmap();
}else{
return null;
}
}
获取到图标之后就要对这个图标进行处理了,要为该图标加上联系人数量的覆盖,首先我们看获取联系人个数的函数。
Java代码
/**
* 获取联系人的个数
* @return 手里通讯录中联系人的个数
*/
private int getContactCount(){
Cursor c=getContentResolver().query(ContactsContract.Contacts.CONTENT_URI, new String[]{ContactsContract.Contacts._COUNT}, null, null, null);
try{
c.moveToFirst();
return c.getInt(0);
}catch(Exception e){
return 0;
}finally{
c.close();
}
}
这里采用Uri的方式获取联系人的cursor,然后获取个数。
有了图标和联系人个数就可以生成带联系人个数的图标了,我们看下生成的这个函数。
Java代码
/**
* 在给定的图片的右上角加上联系人数量。数量用红色表示
* @param icon 给定的图片
* @return 带联系人数量的图片
*/
private Bitmap generatorContactCountIcon(Bitmap icon){
//初始化画布
int iconSize=(int)getResources().getDimension(android.R.dimen.app_icon_size);
Log.d(TAG, "the icon size is "+iconSize);
Bitmap contactIcon=Bitmap.createBitmap(iconSize, iconSize, Config.ARGB_8888);
Canvas canvas=new Canvas(contactIcon);
//拷贝图片
相关新闻>>
最新推荐更多>>>
- 发表评论
-
- 最新评论 更多>>