我试图以编程方式在主屏幕上显示一个小部件,但在通过 Intent 传递小部件 ID 并调用 startActivity(pickIntent)
时我遇到了问题。小部件列表即将出现,但我开发的小部件未被选中。
final int[] appWidgetIds = appWidgetManager.getAppWidgetIds(component);
Intent intent = getIntent();
Bundle extras = intent.getExtras();
if (extras != null) {
mAppWidgetId = extras.getInt(AppWidgetManager.EXTRA_APPWIDGET_ID,
AppWidgetManager.INVALID_APPWIDGET_ID);
}
我在这里得到 extras= null
。所以,我尝试将小部件 ID 分配为
WidgetId = mAppwidgetHost.allocateAppWidgetId();
通过 Intent 发送:
Intent pickIntent = new Intent(AppWidgetManager.ACTION_APPWIDGET_PICK);
pickIntent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, WidgetId);
startActivity(pickIntent);
但我的小部件仍然没有被选中。 谁能告诉我如何在没有任何用户交互的情况下在主屏幕上调出小部件。提前致谢。
最佳答案
您不能这样做:标准的小部件选择器不允许您指定特定的小部件。
关于android - 如何以编程方式在主屏幕上调出小部件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6659776/