android:clickable="true" 或代碼 btn.setClickable(true),否則不觸發 pressed 狀態。<item android:drawable="@drawable/default" /> 在最後且無狀態屬性。android:background="@drawable/selector" 設置背景圖;若用 android:src 則需在代碼 setImageResource(R.drawable.selector)。@drawable/pushed、@drawable/default 在對應密度目錄下存在。<selector xmlns:android="https://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:drawable="@drawable/btn_pressed" />
<item android:state_focused="true" android:drawable="@drawable/btn_focused" />
<item android:drawable="@drawable/btn_normal" />
</selector>
逐個添加 <item> 並運行觀察,定位哪個狀態不生效;使用 Layout Inspector 查看實際屬性值。