一个demo弄懂Button控件的四种监听方式
来源:互联网 发布:知乎为什么叫绿乎 编辑:程序博客网 时间:2024/06/02 18:53
Button是android最重要的控件之一,Button控件的监听无疑是该控件学习的重中之重。下面用一个demo来说明一下**Button控件的四种监听方式**。Button有四种监听方式:1.匿名内部类方式(Button1)2.Activity实现OnClickListener接口(Button2)3.创建一个独立的MyOnClickListener类,实现OnClickListener接口(Button3)4.android:onClick属性指定自定义的MyOnClick方法(Button4)布局文件代码如下:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/LinearLayout1" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.example.buttonlistener.MainActivity" > <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button1" /> <Button android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button2" /> <Button android:id="@+id/button3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button3" /> <Button android:id="@+id/button4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button4" android:onClick="myOnClick" /></LinearLayout>
MainActivity中的代码如下:
public class MainActivity extends Activity implements OnClickListener { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //匿名内部类方式 Button button1 =(Button)findViewById(R.id.button1); button1.setOnClickListener(new OnClickListener(){ @Override public void onClick(View arg0) { Toast.makeText(MainActivity.this, "Button1 clicked!", Toast.LENGTH_LONG).show(); } }); //MainActivity实现OnClickListener接口 Button button2 =(Button)findViewById(R.id.button2); button2.setOnClickListener(MainActivity.this); //创建独立的监听器类,可重复利用 Button button3 =(Button)findViewById(R.id.button3); button3.setOnClickListener(new MyOnClickListener(MainActivity.this)); } @Override //MainAcitivity实现OnClickListener接口要实现的函数 public void onClick(View arg0) { Toast.makeText(MainActivity.this, "Button2 clicked!", Toast.LENGTH_LONG).show(); } //android:onclick属性指定的自定义的监听函数 public void myOnClick(View arg0) { Toast.makeText(MainActivity.this, "Button4 clicked!",Toast.LENGTH_LONG).show(); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); if (id == R.id.action_settings) { return true; } return super.onOptionsItemSelected(item); }}
自定义的MyOnClickListener监听类代码如下:
//独立的监听类,可重复使用public class MyOnClickListener implements OnClickListener{ Context context; public MyOnClickListener(Context context) { this.context=context; } @Override public void onClick(View arg0) { Toast.makeText(context, "Button3 clicked!",Toast.LENGTH_LONG).show(); }}
0 0
- 一个demo弄懂Button控件的四种监听方式
- Button的四种监听方式
- button按钮的四种监听方式
- 四种android的Button监听
- button按钮的四种监听之一
- android Button 监听的几种方式
- android Button 监听的几种方式
- android Button 监听的几种方式
- android Button 监听的几种方式
- android Button 监听的几种方式
- android Button 监听的几种方式
- android Button 监听的几种方式
- android Button 监听的几种方式
- 实现button的监听,3种方式
- Button设置监听的三种方式
- 控件之EditText、Button(监听其的三种方式)
- Button按钮的四种点击方式
- button按钮的四种监听之二
- 函数与数组
- Java内存溢出详解
- swift UI专项训练36 ImageVi图片边框阴影
- Linq中的group by多表多字段
- 天声人語 20150311
- 一个demo弄懂Button控件的四种监听方式
- 谷歌浏览器开发工具使用教程
- Oracle OCP笔记(16)SQL与PL/SQL对象
- andriod 4.0以上版本添加了 android:configChanges="keyboardHidden|orientation"不调用onConfigrationChange方法的解决办法
- tomcat Connecttion refuse 的问题
- 20本必读的用户体验书
- 数组
- gnuradio学习之qa_tag_file_sink.py
- android事件监听回调机制