0

在 UI 中为这些按钮添加了 20 个以上的按钮,所有按钮都需要使用按钮标记编写常见的点击事件方法。怎么做?

4

3 回答 3

2

设置android:contentDescription="xxx"为每个按钮,并用于ViewGroup.findViewsWithText()查找具有指定 contentDescription 的所有视图。

于 2012-12-03T09:31:13.543 回答
1

您可以在您的类中实现 onClickListener,在 onClick 方法中,您可以使用按钮的 ID 而不是标签来放置按钮的操作:

public class MyActivity extends Activity implements View.OnClickListener {
Button myButton;
Button myButtonTwo;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    myButton = (Button) findViewById(R.id.myButtonId);
    myButtonTwo = (Button) findViewById(R.id.myButtonTwo);

    myButton.setOnClickListener(this);
    myButtonTwo.setOnClickListener(this);
}

@Override
public void onClick(View view) {
    if (view.getId() == myButton.getId()) {
        // do something
    } else if (view.getId() == myButtonTwo.getId()){
        // do something else
    }
}

}

于 2012-12-03T07:27:39.283 回答
0

你可以这样做

@Override
public void onClick(View v) {
 switch(v.getTag())
 {
   case 1:
   DoSomething();
   break;

   case 2:
   DoSomething2();
   break;

  default:
   break;
 }

并将按钮单击侦听器设置为此。

b.setOnClickListener(this);

确保实现 OnClickListener 接口

于 2012-12-03T07:26:51.860 回答