栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

2.2、Android--Button 常用事件

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

2.2、Android--Button 常用事件

常用事件
  1. 点击事件
  2. 长按事件
  3. 触摸事件(包括滑动)

MainActivity.java

package com.pha.first;

import androidx.appcompat.app.AppCompatActivity;

import android.nfc.Tag;
import android.os.Bundle;
import android.util.Log;
import android.view.MotionEvent;
import android.view.View;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {
    private static final String tag = "测试按钮事件";
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Button btn_one = findViewById(R.id.btn_one);
        //点击事件
        btn_one.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Log.e(tag, "onClick: " );
            }
        });
        // 长按事件
        btn_one.setOnLongClickListener(new View.OnLongClickListener() {
            @Override
            public boolean onLongClick(View view) {
                Log.e(tag, "onLongClick: " );
                return false;
            }
        });
        // 触摸事件
        btn_one.setOnTouchListener(new View.OnTouchListener() {
            @Override
            public boolean onTouch(View view, MotionEvent motionEvent) {
                Log.e(tag, "onTouch: "+motionEvent.getAction());
                return false;
            }
        });
    }
}

运行后,点击按钮,并按钮移动,继而松手。根据记录信息显示如下

涉及知识点
  1. 按钮触发事件的顺序:onTouch->onLongClick->onClick

  2. Touch的event.GetAction值:0–接触;1–离开;2–滑动

  3. 获取空间id的关键词findViewById :例如 Button btn_one = findViewById(R.id.btn_one);

  4. 在onTouch和onLongClick中返回值:
    默认时false,表示可以继续运行一下触发事件;
    返回true,表示触发事件停止
    onTcouch 返回值true,不运行 onLongClick 和onClick
    onLongClick 返回值true,运行onTcouch(因为在onLongClick事件之前), 不运行 onClick

  5. onClick 的第二种写法
    layout/activity_main.xml 添加属性 android:onClick=“TestClick”



    

com.pha.frist/MainActivity.java添加方法TestClick(由于和setOnClickListener 是相同,setOnClickListener优先度高于android:onclick。想使用android:onclick的方法需要将setOnClickListener 注释或去掉)

	public void TestClick(View view) {
        Log.e(tag, "onClick: "+"TestClick" );
    }
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/999391.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号