判断可用的intent和更改Drawable的透明度
public static boolean isIntentAvailable(Context context, String action) {
final PackageManager packageManager = context.getPackageManager();
final Intent intent = new Intent(action);
List<ResolveInfo> list =
packageManager.queryIntentActivities(intent,
PackageManager.MATCH_DEFAULT_ONLY);
return list.size() > 0;
}
使用如下:
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
final boolean scanAvailable = isIntentAvailable(this,
"com.google.zxing.client.android.SCAN");
MenuItem item;
item = menu.findItem(R.id.menu_item_add);
item.setEnabled(scanAvailable);
return super.onPrepareOptionsMenu(menu);
}
2.
Drawable star = context.getResources().getDrawable(R.drawable.star);
if (book.isFavorite()) {
star.mutate().setAlpha(255); // opaque
} else {
star. mutate().setAlpha(70); // translucent
}
更多相关文章
- 如何避免android上的进程的内存限制
- Android中XML格式数据的简单使用
- Android如何监听输入框的出现和隐藏
- android mapview
- Android使用URLConnection显示网络图片
- android UI控件之webview控件使用实例:加载网页到webview中
- 箭头函数的基础使用
- NPM 和webpack 的基础使用
- Python list sort方法的具体使用