Android 要更新自己的视图项的RemoteView

Android 要更新自己的视图项的RemoteView,android,widget,remoteview,Android,Widget,Remoteview,在我的Widget应用程序中,我使用远程视图更新屏幕布局,因为我也想在主配置活动下创建该结果的预览。我也尝试使用远程视图来避免重写某些代码,我想做的是: // "vg" is an inflated R.layout.widget viewgroup RemoteViews rv = new RemoteViews(context.getPackageName(), R.layout.widget); rv.setTextViewText(R.id.widget_text

在我的Widget应用程序中,我使用远程视图更新屏幕布局,因为我也想在主配置活动下创建该结果的预览。我也尝试使用远程视图来避免重写某些代码,我想做的是:

    // "vg" is an inflated R.layout.widget viewgroup
    RemoteViews rv = new RemoteViews(context.getPackageName(), R.layout.widget);
    rv.setTextViewText(R.id.widget_text, "foo");
    rv.apply(context, vg);
但是,“apply”函数似乎没有更新ViewGroup上的任何内容,不会返回任何错误。
有什么想法吗?

不要相信你能做到这一点:这是一个好主意,但如果没有一个功能齐全的RemoteView主机,你就没有那么幸运了


您要做的只是将R.layout.widget充气到活动中的常规视图组中,并将其填充。

也许这对其他人有帮助

FrameLayout parent = findViewById(R.id.container);
View view = RemoteViews.apply(getActivity(), parent);
parent.addView(view);

原始答案

是的,我现在就是这么做的,但这是对代码行的浪费,而且很容易出错。