我尝试通过 styles.xml 禁用某些视图(大约5-6)。为此,我创建了一个带有以下项目的样式:
<item name="android:enabled">false</item>
对我想要禁用的每个视图都使用了这种样式。但是,我仍然可以使用那些&#34;禁用&#34;观点(BTW他们甚至看起来都不像残疾人) - 点击/触摸。
我决定使用styles.xml,因为每次我想禁用它时,我都不想打扰每个视图(view.setEnabled(false)
)。
那么有没有办法让&#34; android:enabled&#34; 在 styles.xml 中工作,或者我需要自己禁用每个视图?< / p>
答案 0 :(得分:0)
因此,据我所知,Android提供了设置&#34;启用&#34;并非在所有观点中。例如,您无法使用自动完成为SeekBar设置"android:enabled"
(对于&#34;启用&#34;将没有变体),但您仍然可以在视图xml中键入它-body或只是复制粘贴此属性 - 项目将在该位置编译时没有任何错误或警告,但是没有实际结果 - 应用程序中仍然可以看到视图。那个东西是有点奇怪的行为,因为对于每个视图,你可以从代码中设置setEnabled(...)
,这将起作用。
因此,如果您有许多类似的视图,您希望在默认情况下禁用/启用(并且您在 styles.xml 中使用<item name="android:enabled">false</item>
失败了),那么可能是最佳解决方案覆盖您想要的视图并添加自定义附加属性来管理状态。