在配置活动中创建小部件的“预览”

7
我想通过在配置时添加小部件的预览来扩展我创建的小部件。虽然我可以通过在配置活动中创建一个看起来像小部件的预览来轻松实现它,但我想知道是否有一种方法可以将真正的小部件嵌入到活动中,并在活动内使用远程视图更改该小部件,直到按下“完成”按钮之前不更改真正的小部件。
我见过市场上有一些小部件这样做,我想知道他们是不是只是在活动内使用视图重新创建小部件,还是将其真正嵌入到配置活动中?
谢谢,任何帮助都会受到赞赏。
(顺便说一句,我认为Android 3.0及以上版本中的“小部件预览”功能并不是我想要的)
1个回答

0

我知道我有点晚了,但是我遇到了同样的问题并找到了解决方法。

你需要的是 RemoteViews 类中的 apply 方法。你需要将上下文和父视图传递给它,它会返回一个填充好的小部件视图,你需要将其附加到层次结构中。

例如:

val remoteViews = RemoteViews(context.packageName, R.layout.widget)
val widgetView = remoteViews.apply(context, parentView)
parentView.addView(widgetView)

此外,我们还可以重新应用远程视图而不是完全重新创建层次结构:

remoteViews.reapply(context, widgetView)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接