这是一种简单的方法,但我不知道代码,所以我的意思是这样的
button1 = (Button)findViewById(R.id.b1);
button2 = (Button)findViewById(R.id.b2);
button3 = (Button)findViewById(R.id.b3);
button4 = (Button)findViewById(R.id.b4);
//button1-button4.setOnClickListener(new View.OnClickListener() {
public void onClick(View Button1-4){
{
//Do same method for button1-4
}
}
});
button5 = (Button)findViewById(R.id.b5);
button6 = (Button)findViewById(R.id.b6);
button7 = (Button)findViewById(R.id.b7);
button8 = (Button)findViewById(R.id.b8);
//button5-button8.setOnClickListener(new View.OnClickListener() {
public void onClick(View Button5-8){
{
//Do same method for button5-8
}
}
});
button9 = (Button)findViewById(R.id.b9);
button10 = (Button)findViewById(R.id.b10);
button11 = (Button)findViewById(R.id.b11);
button12 = (Button)findViewById(R.id.b12);
//button5-button8.setOnClickListener(new View.OnClickListener() {
public void onClick(View Button9-12){
{
//Do same method for button9-12
}
}
});
所以我的项目中有12个按钮,我放入3组(布局),每组有4个按钮,我的意思是每个组中的4个按钮做同样的事情。
有人可以帮我提供一些示例代码吗?感谢' S
答案 0 :(得分:2)
这是一个模板。希望这有帮助。
public class MyActivity extends Activity implements View.OnClickListener {
Button button1, button2, button3;
@Override
public void onCreate(Bundle bundle) {
super.onCreate();
...
button1 = (Button) findViewById(R.id.button1);
button2 = (Button) findViewById(R.id.button2);
button3 = (Button) findViewById(R.id.button3);
button1.setOnClickListener(this);
button2.setOnClickListener(this);
button3.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch(v.getId()) {
case R.id.button1:
// do stuff; You can called your method from here also.
break;
case R.id.button2:
// do stuff;
break;
...
}
}
您也可以使用android:onclick属性在布局xml中设置它。
android:onClick="onClick"
然后在您的活动类中添加onClick方法。
public void onClick(View v) {
//Write your code here
if(v.getId==R.id.button1 || v.getId==R.id.button2 || v.getId==R.id.button3 ||v.getId==R.id.button4){
// Do stuff
}
}
答案 1 :(得分:0)
button1.setOnClickListener(this);
button2.setOnClickListener(this);
button3.setOnClickListener(this);
button4.setOnClickListener(this);
button5.setOnClickListener(this);
button6.setOnClickListener(this);
button7.setOnClickListener(this);
button8.setOnClickListener(this);
button9.setOnClickListener(this);
button10.setOnClickListener(this);
button11.setOnClickListener(this);
button12.setOnClickListener(this);
@Override
public void onClick(View v) {
if(v.getID==R.id.button1 || v.getID==R.id.button2 || v.getID==R.id.button3|| v.getID==R.id.button4){
// fill
}else if(v.getID==R.id.button5 || v.getID==R.id.button6 || v.getID==R.id.button7|| v.getID==R.id.button8){
// fill
}else if(v.getID==R.id.button9 || v.getID==R.id.button10 || v.getID==R.id.button11|| v.getID==R.id.button12){
// sadsda;
}
}
试试这个
答案 2 :(得分:0)
试试这个我希望你的问题得到解决..
public class MyActivity extends Activity implements View.OnClickListener {
Button button1, button2, button3,button4;
@Override
public void onCreate(Bundle bundle) {
super.onCreate();
...
button1 = (Button) findViewById(R.id.button1);
button2 = (Button) findViewById(R.id.button2);
button3 = (Button) findViewById(R.id.button3);
button4 = (Button) findViewById(R.id.button4);
button1.setOnClickListener(this);
button2.setOnClickListener(this);
button3.setOnClickListener(this);
button4.setOnClickListener(this);
}
@Override
public void onClick(View v) {
if(v.getId==R.id.button1 || v.getId==R.id.button2 || v.getId==R.id.button3 ||v.getId==R.id.button4){
// Do somthin what you want
}
}
}
答案 3 :(得分:0)
public class MyActivity extends Activity implements View.OnClickListener {
Button button1, button2, button3;
@Override
public void onCreate(Bundle bundle) {
super.onCreate();
...
button1 = (Button) findViewById(R.id.button1);
button2 = (Button) findViewById(R.id.button2);
button3 = (Button) findViewById(R.id.button3);
}
@Override
public void onClick(View v) {
switch(v.getId()) {
case R.id.button1:
// do stuff; You can called your method from here also.
break;
case R.id.button2:
// do stuff;
break;
...
}
}
这本身应该做的伎俩