簡體   English   中英

Android:如何檢測何時觸摸了禁用的復選框?

[英]Android: How to detect when a disabled Checkbox is touched?

我要求有時候ListView中的Checkboxes不能打勾。 我正在使用setEnabled(false)

無論如何,當用戶仍然單擊禁用的Checkbox時,是否有任何提示消息?

我還使用了覆蓋getView方法的自定義ArrayAdapter

你不能 他們稱其為禁用是有原因的。

您可以使用相同的資產創建自定義Checkbox,但是我想那只是浪費時間。 用戶會知道該復選框已禁用,因為禁用的窗口小部件以30%的字母顯示。

您可以:)使用擴展CheckBox並覆蓋onTouchEvent的幫助程序類,類似於:

public class DisabledTouchableCheckbox extends CheckBox {

    public DisabledTouchableCheckBox(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    @Override
    public boolean onTouchEvent(MotionEvent event) {
        if ((!isEnabled()) && (event.getAction()==MotionEvent.ACTION_DOWN)) 
            showToast();
        return super.onTouchEvent(event);
    }

    private void showToast() {
            ... show your toast
    }

}

然后,在XML中,您必須將<com.YOURPACKAGE.DisabledTouchableCheckBox> <CheckBox>更改為

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM