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
}

更多相关文章

  1. 如何避免android上的进程的内存限制
  2. Android中XML格式数据的简单使用
  3. Android如何监听输入框的出现和隐藏
  4. android mapview
  5. Android使用URLConnection显示网络图片
  6. android UI控件之webview控件使用实例:加载网页到webview中
  7. 箭头函数的基础使用
  8. NPM 和webpack 的基础使用
  9. Python list sort方法的具体使用

随机推荐

  1. java自学之路-day01
  2. 一道盛大的面试题
  3. WebService之基于REST机制的实现实例(Java
  4. Java简单游戏开发之碰撞检测
  5. 使用Java语言如何实现快速文件复制?
  6. [源码和文档分享]基于java的RPG回合制游
  7. 工作中傻傻的错-2011/11
  8. 使用字符串参数调用AndroidJni静态方法。
  9. 在jasper中获取组部分报告API java
  10. 抢分啦!谁能帮我解决java的Socket的问题?