如何在OnClick视图事件中增加计数器

loc*_*cke 3 sdk android

我知道这听起来很基本,但这是我的问题:

我有一个onclickevent监听器,它应该在点击它时无限增加计数器:

final int counter = 0;
myimageView2.setOnClickListener(new OnClickListener() {
    public void onClick(View v) {
        counter ++;
    }
});
Run Code Online (Sandbox Code Playgroud)

问题是我似乎无法从onclick事件中调用计数器,除非它被设置为final.然而,由于它是最终的,我不能再改变其价值.

我尝试将计数器放在onclick事件中,即:

myimageView2.setOnClickListener(new OnClickListener() {
    public void onClick(View v) {
        int counter = 0;
        counter ++;
    }
});
Run Code Online (Sandbox Code Playgroud)

但是,单击它也会将计数器重置为零.

我该如何解决这个问题?我希望每次单击它时都会不断递增计数器,但我不能在onclick之外定义计数器,除非它是最终的,这意味着我不能再增加它.而且我无法在onclick中定义计数器,因为它只会在每次单击时重置其值.

loc*_*cke 12

解决了:

myimageView2.setOnClickListener(new OnClickListener() {
    int counter = 0;
    public void onClick(View v) {
        counter ++;
    }
});
Run Code Online (Sandbox Code Playgroud)

  • 考虑通过单击旁边的"勾号"或"检查"图标将此答案标记为"已接受" (2认同)