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

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在接收构造的 View id作为参数时遇到问题。但是我无法引用XML资源,因为它们是在运行时创建的。在运行时用RemoteViews填充TextViews的正确方法是什么?

最佳答案

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

关于Android小工具: How to add Views to RemoteViews on runtime,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9297418/

10-10 17:22