我知道这听起来很基本,但这是我的问题:
我有一个onclickevent监听器,它应该在点击时无限期地递增计数器:
final int counter = 0;
myimageView2.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
counter ++;
}
});
问题是我似乎无法在onclick事件中调用计数器,除非它设置为 final 。但是,由于它是最终的,我不能再改变它的价值。
我尝试将计数器放在onclick事件中,即:
myimageView2.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
int counter = 0;
counter ++;
}
});
但是,单击它也会将计数器重置为零。
我该如何解决这个问题?我想每次点击它时不断递增计数器, 但我不能在onclick之外定义计数器,除非它是最终的,这意味着我不能再增加它。而且我无法在onclick中定义计数器,因为它只会在每次单击时重置其值。
答案 0 :(得分:12)
解决:
myimageView2.setOnClickListener(new OnClickListener() {
int counter = 0;
public void onClick(View v) {
counter ++;
}
});
答案 1 :(得分:1)
你可以在Activity的oncreate方法之外声明'counter'。
答案 2 :(得分:0)
<telerik:RadButton Grid.Row="1" Content="Ok" Height="22" HorizontalAlignment="Left" Margin="25,450,0,0" Name="BtnOk" VerticalAlignment="Top" Width="135" Click="BtnOk_Click" />