我想在运行时将textviews添加到我的窗口小部件。我看到了许多教程,其中RemoteViews对象调用addView方法将视图添加到某些布局。
RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.main);
TextView t = new TextView(context);
views.addView(R.id.view_container, t);
appWidgetManager.updateAppWidget(thisWidget, views);
但是addView方法会显示此错误:对于RemoteViews.type类型,未定义方法addView(int,RemoteViews)。该方法是为ViewGroup类定义的,但是为什么它对每个人都起作用?有没有一种方法可以在运行时将textview添加到某些RemoteView?
最佳答案
签名不是RemoteViews.addView(int, RemoteViews)
吗?
您似乎将TextView
作为第二个参数。
这样的事情应该起作用:
RemoteViews remoteViewToAdd = new RemoteViews(context.getPackageName(), LAYOUT_ID);
...
views.addView(R.id.view_container, remoteViewToAdd);