您的位置:首页 > 移动开发 > Android开发

android button控件目前主要有如下几种监听方式

2015-09-15 10:52 531 查看
android button控件目前主要有如下几种监听方式:

一个button控件对应一个监听:

[java] view
plaincopy

Button buttontest;

buttontest = (Button) findViewById(R.id.button1);

buttontest.setOnClickListener(new View.OnClickListener() {



@Override

public void onClick(View v) {

// TODO Auto-generated method stub

Log.i("TEST", "button onClick");

}

});

多个button对应一个监听1:

[java] view
plaincopy

start = (Button) findViewById(R.id.button1);

stop = (Button) findViewById(R.id.button2);

start.setOnClickListener(mylistener );

stop.setOnClickListener(mylistener );

View.OnClickListener mylistener = new View.OnClickListener() {



@Override

public void onClick(View v) {

switch (v.getId()) {

case R.id.button1:

Log.d(TAG, "Start to recorder video\n");

start_recorde();

break;

case R.id.button2:

Log.d(TAG, "Stop to recorder video\n");

stop_recorde();

break;

default:

break;

}

}

};

多个button对应一个监听2:

[java] view
plaincopy

public class MainActivity extends Activity implements View.OnClickListener{

//界面元素

private Button start;

private Button stop;



@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);



start = (Button) findViewById(R.id.button1);

stop = (Button) findViewById(R.id.button2);

start.setOnClickListener(this);

stop.setOnClickListener(this);

}



@Override

public boolean onCreateOptionsMenu(Menu menu) {

getMenuInflater().inflate(R.menu.activity_main, menu);

return true;

}



@Override

public void onClick(View v) {

switch (v.getId()) {

case R.id.button1:

Log.d(TAG, "Start to recorder video\n");

break;

case R.id.button2:

Log.d(TAG, "Stop to recorder video\n");

break;

default:

break;

}

}



}

xml中绑定监听:

[html] view
plaincopy

<Button

android:id="@+id/button1"

android:layout_height="wrap_content"

android:layout_width="wrap_content"

android:onClick="mybuttonlistener">

</Button>

对应java代码如下:

[java] view
plaincopy

Button btn = (Button) findViewById(R.id.button1);

public void mybuttonlistener(View target){

//do something5

}

从个人角度来讲,不推荐使用第四种实现方式。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: