最近在寫代碼中,發現在xml文件設置了android:clickable="false",之后這個View還是可點的。
后來發現,是代碼中對View設置了監聽事件(setOnClickListener),把代碼屏蔽了,clickable屬性生效。
后來查看了一下源碼(setOnClickListener),代碼如下,發現其中的if語句,如果這個View clickable不可點,該方法會把這個View設為可點,這也就是為什么我的問題會出現的原因了
public void setOnClickListener(OnClickListener l) { if (!isClickable()) { setClickable(true); } getListenerInfo().mOnClickListener = l; }