为快捷方式设置不同的图标/图像



我编写了一个程序,可以在Android模拟器主屏幕中创建我的应用程序的快捷方式。但问题是当我创建快捷方式时,它具有默认的 android 图标。我的问题是如何更改快捷方式的图标?

我使用以下行来设置图标

Intent j=new Intent();
j.putExtra(Intent.EXTRA_SHORTCUT_INTENT,i);     
j.putExtra(Intent.EXTRA_SHORTCUT_NAME,n);                                                   
j.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,R.drawable.icon);
j.putExtra ("duplicate", false);
j.setAction("com.android.launcher.action.INSTALL_SHORTCUT");   
sendBroadcast(j);

系统不在您的上下文中。因此,您需要提供更多详细信息才能向您发送图标。

见 https://github.com/ldo/ShortcutCircus_Android/blob/master/src/Activity2.java

图标由 :

Intent.ShortcutIconResource.fromContext(Activity2.this, R.drawable.icon)

或者,您可以解码位图并改用EXTRA_SHORTCUT_ICON

您可以通过两种方式执行此操作。

putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,resId);

放置额外(Intent.EXTRA_SHORTCUT_ICON,位图);

最新更新