Android中如何使用基于监听的事件处理(上)
16lz
2021-01-23
一、直接绑定标签—布局
二、直接绑定标签—Activity
public class ListenerImplActivity extends Activity { private final String TAG = ListenerImplActivity.class.getSimpleName(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_listener_impl); } public void click(View view) { Log.i(TAG, "直接绑定到标签"); }}
三、直接绑定标签—运行效果
四、匿名内部类—布局
五、匿名内部类—Activity
public class ListenerImplActivity extends Activity { private final String TAG = ListenerImplActivity.class.getSimpleName(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_listener_impl); Button btnAnonymousInnerclass = findViewById(R.id.btn_anonymous_innerclass); btnAnonymousInnerclass.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Log.i(TAG, "匿名内部类"); } }); }}
六、匿名内部类—运行效果
七、内部类—布局
八、内部类—Activity
public class ListenerImplActivity extends Activity { private final String TAG = ListenerImplActivity.class.getSimpleName(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_listener_impl); Button btnInnerClazz = findViewById(R.id.btn_innerclass); InnerListenerClazz innerListenerClazz = new InnerListenerClazz(); btnInnerClazz.setOnClickListener(innerListenerClazz); } class InnerListenerClazz implements View.OnClickListener { @Override public void onClick(View v) { Log.i(TAG, "内部类"); } }}
九、内部类—运行效果
十、外部类—布局
十一、外部类
public class ExternalClassListener implements View.OnClickListener { private final String TAG = ExternalClassListener.class.getSimpleName(); @Override public void onClick(View v) { Log.i(TAG, "外部类"); }}
十二、外部类—Activity
public class ListenerImplActivity extends Activity { private final String TAG = ListenerImplActivity.class.getSimpleName(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_listener_impl); Button btnExternalClazzListener = findViewById(R.id.btn_externalclass); ExternalClassListener externalClassListener = new ExternalClassListener(); btnExternalClazzListener.setOnClickListener(externalClassListener); }}
十三、外部类—运行效果
十四、Activity本身—布局
十五、Activity本身—Activity
public class ListenerImplActivity extends Activity implements View.OnClickListener { private final String TAG = ListenerImplActivity.class.getSimpleName(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_listener_impl); Button btnActivity = findViewById(R.id.btn_activity); btnActivity.setOnClickListener(this); } @Override public void onClick(View v) { Log.i(TAG, "Activity本身"); }}