创建颜色选择器。
in styles.xml
<style name="waitnessCallEnableStyle">
<item name="backgroundColor">@color/waitness_color</item>
</style>
在res / colors / waitness_color.xml中>
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/circle_paint_dark" android:state_enabled="false" /> <item android:drawable="@drawable/circle_transparent" /> </selector>
在我的xml布局中:
在活动中,我将view
更改为禁用
private lateinit var dataBinding: MainActivityBinding override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) dataBinding = DataBindingUtil.setContentView<MainActivityBinding>(this, R.layout.main_activity) dataBinding.setHandler(this) private fun setWaitressCallMakeMode() { dataBinding.waitressCallContainer.isClickable = false dataBinding.waitressCallContainer.isEnabled = false dataBinding.executePendingBindings() }
但是它不起作用。
Background
更改为禁用时,view
颜色不变。
在styles.xml中的
创建颜色选择器。
<selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_enabled="true" android:drawable="@drawable/ic_button_gradient"/> <item android:state_enabled="false" android:drawable="@color/gray"/> </selector>
风格:
<style name="YourStyle">
<item name="android:background">@color/your_color</item>
<item name="android:textColor">@android:color/black</item>
</style>
创建颜色选择器。