android 入门 003 (点击事件)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android 入门 003 (点击事件)相关的知识,希望对你有一定的参考价值。
点击事件 有四种实现方式。
1.内部类实现方式
1.0
package cn.rfvip.clickevent; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //第一个按钮点击 内部类实现 Button bt1=(Button) findViewById(R.id.btn1); bt1.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO 自动生成的方法存根 System.out.println("第一个按钮点击(方式一: 内部类实现)"); } }); } }
1.1.一的变形写法
package cn.rfvip.clickevent; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //第一个按钮点击 内部类实现 Button bt1=(Button) findViewById(R.id.btn1); bt1.setOnClickListener(new Mybtn1() ); } class Mybtn1 implements OnClickListener{ @Override public void onClick(View v) { // TODO 自动生成的方法存根 System.out.println("第一个按钮点击(方式一: 内部类变形写法)"); }} }
2、this 实现
package cn.rfvip.clickevent; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class MainActivity extends Activity implements OnClickListener{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //第二个按钮点击 内部类实现 Button bt2=(Button) findViewById(R.id.btn2); bt2.setOnClickListener(this); } @Override public void onClick(View v) { // TODO 自动生成的方法存根 System.out.println("第二个按钮点击,方式二:this 实现 implements OnClickListener"); } }
3、无ID 实现
在activity_main.xml 中 android:onClick="getmeth"
<Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="点击5无id实现" android:onClick="getmeth" />
在 MainActivity.java中
public void getmeth(View v) { System.out.println("not Id implements "); }
以上是关于android 入门 003 (点击事件)的主要内容,如果未能解决你的问题,请参考以下文章
Android YouTube Player API Fragment无法手动处理触摸事件
Android 事件分发事件分发源码分析 ( Activity 中各层级的事件传递 | Activity -> PhoneWindow -> DecorView -> ViewGroup )(代码片段