我会尽量简短: 在我的Android应用程序中,我有大量的视图(30 - 40)显示在一个屏幕上,子视图显示在ScrollView对象上。 现在,所述视图只是按钮和textview代表单个产品的详细信息,按下时,调用一个简单的方法,我需要传递的是表示产品的值(int)。 我想知道如何避免必须为每个视图键入代码的麻烦,这会导致数十行痛苦:
public void onClick(View v) {
switch(v.getId()) {
case R.id.btn1 :
simpleMethod(1);
break;
case R.id.btn2 :
simpleMethod(2);
break;
case R.id.btn3 :
simpleMethod(3);
break;
}
}
..等等所有观点。 考虑到按下按钮时不仅要调用simpleMethod()。
我的猜测是在女巫中使用一个地图,密钥将是视图id又名R.id.something,而值只是一个传递给方法的数字。
处理大量观看的其他有效方法是什么?
答案 0 :(得分:3)
您可以为自己的观点添加标签,然后:
public void onClick(View v) {
simpleMethod(Integer.parseInt(v.getTag()));
}