RemoteViews 支持的方法

2024-04-30

我正在尝试将值转发到 Android RemoteView。某些值可以通过使用反射的 set 方法转发。例如背景颜色的工作原理:

rv.setInt(R.id.viewId, "setBackgroundColor", 0xffff0000);

尽管该机制对于一个参数方法调用来说看起来非常通用,但它不适用于某些方法。例如。在视图上设置 alpha 不起作用(在 api 级别 15 上运行):

rv.setFloat(R.id.viewId, "setAlpha", 0.5f);

框架在运行时抱怨不支持 setAlpha(float)。有谁知道为什么会这样?远程查看支持的方法有什么规则?为什么阿尔法不属于其中呢?

Update:

CommonsWare 的答案是正确的。经过更多研究后,某些人可能会感兴趣 ImageView.setAlpha(int) 是远程的。它只设置图像上的 alpha,因此不适用于九个补丁等。但它可能对某些人有用。


有谁知道为什么会这样?远程查看支持的方法有什么规则?

setBackgroundColor()@RemotableViewMethod注解。setAlpha()才不是。

为什么阿尔法不属于其中呢?

这可能是任何事情,从具体的技术原因到简单的疏忽。欢迎您在以下位置提交功能请求:http://b.android.com http://b.android.com在 Android 的未来版本中添加该注释,或者实现它并提交补丁。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

RemoteViews 支持的方法 的相关文章

随机推荐