将RemoteView转换为视图

我想呈现一个RemoteViews实例到一个canvas,就像我做一个常规的视图。 我用

RemoteViews.apply(context,null)

并返回一个FrameLayout,所有的视图嵌套和正确的测量(位置和大小是正确的),但在使用.draw在返回的视图,呈现所有没有值的元素 – TextViews是空的,AnalogClock重置在00: 00等等。

有任何想法吗? 我迷路了 :(

Solutions Collecting From Web of "将RemoteView转换为视图"

不确定问题是否仍然存在。 尽pipe如此,这是我的经验与RemoveViews。 看来你不能在返回的视图上调用draw() 。 您必须将此视图添加到父容器,以使其成为全局视图层次结构的一部分。 例如,你有一个Activity其中有一个FrameLayout 。 你的代码将如下所示。

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

现在你应该可以看到testing。 如果你设置了监听器,它们也可以正常工作。