如何在android中使用计数器禁用按钮

时间:2018-02-05 20:20:13

标签: android

我想在用户按下按钮五次时禁用按钮。

这是代码

if(mLatestindex<=4) {
    mNextButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                mCurrentIndex = (mCurrentIndex + 1) % mQuestionBank.length;
                mIsCheater = false;
                updateQuestion();
                mFalseButton.setEnabled(true);
                mTrueButton.setEnabled(true);
                mLatestindex++;
            }
}

2 个答案:

答案 0 :(得分:1)

您的mLatestIndex <= 4被错误地放置了。 您应该检查Click Listener中的索引

mNextButton.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        if (mLatestIndex < 5) {
            // Do the stuff
            // This will execute only if the index is <= 4
        }
        mLatestIndex++;
    }
});

仅当mLatestIndex小于5时才会执行代码,并将其递增。

答案 1 :(得分:0)

如果您需要禁用按钮5次点击一般只需添加全局计数器并使用check

在onClick()中增加它
button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            clickerCount++;
            if (clickerCount >= 5) {
               button.setEnabled(false);
            }
        }

如果您需要在一定时间内单击5次时禁用视图,则可以存储上次点击时间的时间戳并将其与当前时间进行比较