安卓点击事件的四种写法
1、类似java,得到组件,在添加监听,注意这里和java的方法有些不一样
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //获得按钮,添加监听器 //必须给按钮添加一个id //强制转型为Button Button btn = (Button) findViewById(R.id.loginbtn); MyOnclickListener ml = new MyOnclickListener(); btn.setOnClickListener(ml); } class MyOnclickListener implements OnClickListener{ @Override public void onClick(View v) { Toast.makeText(MainActivity1.this, "点击了按钮", 5).show(); } }
?2、利用匿名内部类,这和java是一样的
//获得按钮,添加监听器 //使用匿名内部类 Button btn = (Button) findViewById(R.id.loginbtn); btn.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Toast.makeText(MainActivity2.this, "点击了按钮", 5).show(); } });
?3、activity实现onclicklistener接口
//实现监听器接口 public class MainActivity extends Activity implements OnClickListener { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //找到按钮,设置监听器,现在activity也是一个监听器 Button btn =(Button)findViewById(R.id.loginbtn); btn.setOnClickListener(this); } @Override public void onClick(View v) { Toast.makeText(this, "点击了按钮", 5).show(); } }
?4、利用onclick属性,注意xml的写法,和方法一样要有View参数
//利用按钮的onclick属性 public void loginclick(View v){ Toast.makeText(this, "点击了按钮", 5).show(); } ?<Button ??????? android:id="@+id/loginbtn" ??????? android:onClick="loginclick" ???????? android:layout_width="match_parent" ??????? android:layout_height="wrap_content" ??????? android:text="@string/loginbtn" ??????? ??????? />
?
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。