Android Widgets:如何在运行时向RemoteViews添加视图

时间:2012-02-15 16:42:22

标签: android textview widget remoteview

我想在运行时将以线性布局排列的文本视图添加到我的小部件中。我做了以下事情:

LinearLayout l = new LinearLayout(context);
for (int i = 0; i < 10; i++) {
    TextView t = new TextView(context);
    t.setText("Hello");
    l.addView(t);  }        
RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.main);
RemoteViews view = new RemoteViews (context.getPackageName(), l.getId());
views.addView(R.layout.main, view);

但是当我添加小部件时,我遇到了一个问题加载小部件错误。似乎RemoteViews有一个问题,即接收构造的视图id作为参数。但我无法引用XML资源,因为它们是在运行时创建的。在运行时使用RemoteViews填充TextViews的正确方法是什么?

1 个答案:

答案 0 :(得分:5)

只能在RemoteView中使用xml资源。在运行时创建的视图应基于预定义的xml视图。