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

kkg*_*ery 8 android widget textview 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);
Run Code Online (Sandbox Code Playgroud)

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

kkg*_*ery 5

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