【发布时间】:2012-04-03 18:56:26
【问题描述】:
我最初的目标是将 Google 搜索小部件添加到活动的线性布局中。我需要包含它,就像它在启动器中显示和工作一样(这就是我需要能够添加小部件的原因)。
我想在我的活动中添加小部件,而不必启动小部件选择器活动。我试过了:
1。直接指定一个整数 id(我总是得到 inflate 错误)
2。得到这样的 id:
ComponentName cn = new ComponentName(getBaseContext(), "com.android.quicksearchbox.SearchWidgetProvider");
int[] ids = AppWidgetManager.getInstance(getApplicationContext()).getAppWidgetIds (cn);
(数组始终为空)
这些都不起作用。
在此之后,我有了这段代码,以使用 ID(如果我从小部件选择器活动中获取 ID,它就可以工作):
AppWidgetProviderInfo withWidgetInfo = AppWidgetManager.getInstance(getApplicationContext()).getAppWidgetInfo(appWidgetId);
AppWidgetHostView hostView = myWidgetHost.createView(getBaseContext(), appWidgetId, withWidgetInfo);
hostView.setAppWidget(appWidgetId, withWidgetInfo);
LinearLayout ll = (LinearLayout) findViewById(R.id.ll);
ll.addView(hostView);
我该怎么做?谢谢!
【问题讨论】: