如何使开关工作?

时间:2013-06-28 13:24:21

标签: java android

有很多以编程方式创建的按钮,其中有两个:

Button agafon_1 = new Button(this);agafon_1.setText(R.string.txt_agafon_1);llPreViewList.addView(agafon_1, lParams);
Button agafon_2 = new Button(this);agafon_2.setText(R.string.txt_agafon_2);llPreViewList.addView(agafon_2, lParams);

有OnClickListener,它有一个开关。我需要插入什么来代替问号才能使开关正常工作?

switch (???) {
case ???:
//
break;
case ???:
//
break;
}

文件R.java甚至没有提到id按钮,这使得无法使用v.getId()......

2 个答案:

答案 0 :(得分:1)

如果您为每个按钮使用相同的OnClickListener,则为Button的每个Button.setId(int)设置不同的ID,并为v.getId()使用switch,其中vonClick()的参数。否则,您可以为每个按钮创建不同的OnClickListener

答案 1 :(得分:0)

您的课程应该实施OnClickListener

  public class MainActivity extends Activity implements OnClickListener

然后

     Button agafon_1 = new Button(this)
     agafon_1.setId(yourbuttonid); 
     agafon_1.setOnClickListener(this);   

然后

  @Override
  public void onClick(View v)
  {
       switch(v.getId())
       {
        case buttonid1 : // id must match
        break;
        case buttonid2 :
        break;
        ... 

       }
  }