• Android Button点击事件


    一.Button点击事件

    1. <!-- activity_main.xml -->
    2. <?xml version="1.0" encoding="utf-8"?>
    3. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    4. xmlns:tools="http://schemas.android.com/tools"
    5. android:layout_width="match_parent"
    6. android:layout_height="match_parent"
    7. android:background="#FFFFFF"
    8. android:gravity="center"
    9. android:orientation="vertical"
    10. tools:context=".MainActivity">
    11. <Button
    12. android:id="@+id/button_one"
    13. android:layout_width="200dp"
    14. android:layout_height="100dp"
    15. android:background="@drawable/ic_btn_seletor"
    16. android:text="按钮" />
    17. <Button
    18. android:layout_width="200dp"
    19. android:layout_height="100dp"
    20. android:id="@+id/button_two"
    21. android:text="按钮"/>
    22. </LinearLayout>

     

     Button事件常见的时间有,点击事件,长按事件,触摸事件等,这里就不仔细介绍业务,只介绍两种实现方式:

    1. 获取按钮,使用按钮绑定事件:
    1. <?xml version="1.0" encoding="utf-8"?>
    2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    3. xmlns:tools="http://schemas.android.com/tools"
    4. android:layout_width="match_parent"
    5. android:layout_height="match_parent"
    6. android:background="#FFFFFF"
    7. android:gravity="center"
    8. android:orientation="vertical"
    9. tools:context=".MainActivity">
    10. <Button
    11. android:id="@+id/button_one"
    12. android:layout_width="200dp"
    13. android:layout_height="100dp"
    14. android:text="按钮" />
    15. </LinearLayout>
    1. import androidx.appcompat.app.AppCompatActivity;
    2. import android.os.Bundle;
    3. import android.view.MotionEvent;
    4. import android.view.View;
    5. import android.view.ViewGroup;
    6. import android.widget.Button;
    7. import android.widget.LinearLayout;
    8. public class MainActivity extends AppCompatActivity {
    9. @Override
    10. protected void onCreate(Bundle savedInstanceState) {
    11. super.onCreate(savedInstanceState);
    12. setContentView(R.layout.activity_main);
    13. Button btn = findViewById(R.id.button_one);
    14. /** 点击事件 */
    15. btn.setOnClickListener(new View.OnClickListener() {
    16. @Override
    17. public void onClick(View view) {
    18. // TODO 点击动作 触发事件后,会回调该方法
    19. }
    20. });
    21. /** 长按事件 */
    22. btn.setOnLongClickListener(new View.OnLongClickListener() {
    23. @Override
    24. public boolean onLongClick(View view) {
    25. // TODO 长按动作 触发事件后,会回调该方法
    26. return false; // 返回值为true,则会屏蔽点击事件(不再回调点击事件方法)。返回false,则会调用点击事件
    27. }
    28. });
    29. /** 触摸事件 */
    30. btn.setOnTouchListener(new View.OnTouchListener() {
    31. @Override
    32. public boolean onTouch(View view, MotionEvent motionEvent) {
    33. // TODO 触摸动作 触发事件后,会回调该方法
    34. // 触摸事件分为三种,
    35. return false; // 返回值为true,则会屏蔽点击事件和长按事件。返回false,则不会屏蔽
    36. }
    37. });
    38. }
    39. }
    1. 在layout直接调用方法。
    1. <?xml version="1.0" encoding="utf-8"?>
    2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    3. xmlns:tools="http://schemas.android.com/tools"
    4. android:layout_width="match_parent"
    5. android:layout_height="match_parent"
    6. android:background="#FFFFFF"
    7. android:gravity="center"
    8. android:orientation="vertical"
    9. tools:context=".MainActivity">
    10. <Button
    11. android:id="@+id/button_one"
    12. android:layout_width="200dp"
    13. android:layout_height="100dp"
    14. android:onClick="onClickListener"
    15. android:text="按钮" />
    16. </LinearLayout>
    1. import androidx.appcompat.app.AppCompatActivity;
    2. import android.os.Bundle;
    3. import android.view.MotionEvent;
    4. import android.view.View;
    5. import android.view.ViewGroup;
    6. import android.widget.Button;
    7. import android.widget.LinearLayout;
    8. public class MainActivity extends AppCompatActivity {
    9. @Override
    10. protected void onCreate(Bundle savedInstanceState) {
    11. super.onCreate(savedInstanceState);
    12. setContentView(R.layout.activity_main);
    13. }
    14. public void onClickListener(View view) {
    15. // TODO 点击事件。这边就是相当于方法一中的public void onClick(View view);
    16. }
    17. }

  • 相关阅读:
    JS每晚24:00更新某方法
    ASP.net数据从Controller传递到视图
    【Spring源码系列】Bean生命周期-依赖注入
    代码质量与安全 | 实践“边写边清理”,您需要做好这两件事:质量配置文件和质量门
    CI/CD笔记.Gitlab系列.`gitlab-ci.yml`中的头部关键字
    java计算机毕业设计社区二手交易平台前台源码+系统+数据库+lw文档+mybatis+运行部署
    新唐NUC980使用记录:使用wpa_supplicant访问无线网络
    离线数仓(10):ODS层实现之业务数据核对
    26装饰器3(在面向对象的过程中使用装饰器)
    R语言使用epiDisplay包的pyramid函数可视化金字塔图、基于已有的汇总数据(表格数据)可视化金字塔图、使用main参数添加自定义标题信息
  • 原文地址:https://blog.csdn.net/weixin_49303682/article/details/136724950