0

我的应用程序中有一个按钮可以启动另一个应用程序(用户可以像这样通过 longClick 选择哪个应用程序)

btnNavigation.setOnLongClickListener(new View.OnLongClickListener() {

        @Override
        public boolean onLongClick(View v) {
         // Pick an application
            Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
            mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);

            Intent pickIntent = new Intent(Intent.ACTION_PICK_ACTIVITY);
            pickIntent.putExtra(Intent.EXTRA_INTENT, mainIntent);
            startActivityForResult(pickIntent, 1);


            return false;
        }
    });

通过 onActivityResult 我得到了一个意图

现在我想将 btnNavigation 的图像设置为用户选择的应用程序的图标

如何从用户选择的包中获取图标?

4

1 回答 1

1

您可以像这样获取应用程序图标的可绘制对象:

PackageManager pk = context.getPackageManager();
Drawable d = pk.getApplicationIcon(applicationPackageName);
于 2012-08-07T23:38:59.233 回答