• 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. }

  • 相关阅读:
    java基础10题
    计算程序运行时间 demo
    Trie字符串统计(c++题解)
    Flutter Cocoon 已达到 SLSA 2 级标准的要求
    Android Material Design
    Java 内存模型,或许应该这么理解
    【编译原理】LL(1)文法
    鸿鹄工程项目管理系统 Spring Cloud+Spring Boot+Mybatis+Vue+ElementUI+前后端分离构建工程项目管理系统
    可观测性-可视化-Grafana 数据下钻
    施耐德EOCR-DS3-60S电机保护器 5-60A 24-240VAC/DC
  • 原文地址:https://blog.csdn.net/weixin_49303682/article/details/136724950