我的 Activity 上有一系列 ImageView。我想在触摸其中一个时执行一个方法。我有下一个:
public void onClick(View v) {
switch(v.getId()){
case R.id.image1:
mymethod(1,1,movimientos,(ImageView)v);
break;
case R.id.image2:
ponerficha(1,2,movimientos,(ImageView)v);
break;
case R.id.image3:
...
但是方法没有执行,问题不在于方法,因为案例中的任何代码都不起作用。有什么想法吗?
最佳答案
首先你需要检查你是否已经为你的Images
注册了onClickListener
image.setOnClickListener(this);
(如果你的类实现了 OnClickListener 接口(interface),你必须使用这个)
然后你如何声明和初始化你的 ImageViews
,是否有自己的 id。
image = (ImageView) findViewById(R.id.someId)
anotherImage = (ImageView) findViewById(R.id.anotherId)
...
您可以像使用匿名类一样使用 onClickListeners
image.setOnClickListener(
new View.OnClickListener() {
public void onClick(View v) {
// some actions
}
});
但如果您有许多小部件要设置实现OnClickListener
,则更加复杂和更好。
public class ClassName extends Activity implements View.OnClickListener {}
关于android - 在Android的许多 View 上设置Onclick,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10973164/