运行时在RemoteView中设置视图位置

问题描述 投票:0回答:2

我正在寻找一种方法来更改视图中视图的位置 运行时的主屏幕小部件/远程视图。 我之前也看过这个主题,但那里给出的答案对我没有帮助,甚至不起作用。

例如:

我正在尝试将 TextView 的 x 位置移动 5 个像素:

myRemoteView.setFloat(R.id.myTextView, "setTranslationX", 5); // does not work
myRemoteView.setFloat(R.id.myTextView, "setX", 5); // does not work
myRemoteView.setInt(R.id.myTextView, "setLeft", 5); // does not work

我在其他地方找不到可以帮助我的有用答案。

java android remoteview
2个回答
0
投票

您可以尝试使用

RemoteViews
膨胀一种不同的布局,其中小部件位于您想要的位置。我不确定它是否有效,但值得一试。


0
投票

从 API 31 开始,setTranslationX 可以在 RemoteView 上调用,因为它已被注释为 RemotableViewMethod。要么:

myRemoteView.setFloat(R.id.myTextView, "setTranslationX", 5f)

或者使用 RemoteViewsCompat 中的扩展方法:

myRemoteView.setViewTranslationXDimen(R.id.myTextView, 5f, TypedValue.COMPLEX_UNIT_PX)
© www.soinside.com 2019 - 2024. All rights reserved.