二、Button
一:前端页面显示
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:layout_width="match_parent" android:layout_height="match_parent"
android:orientation="vertical"
xmlns:android="http://schemas.android.com/apk/res/android">
<Button
android:id="@+id/btn"
android:text="按钮1"
android:background="@drawable/btn_selector"
android:backgroundTint="@color/btn_color_selector"
android:layout_width="200dp"
android:layout_height="100dp"
android:onClick="leoClick"/>
</LinearLayout>
二:后台调用Button的事件
主要三种事件:1.点击事件 2.长按事件 3.触摸事件
package com.example.mybutton;
import androidx.appcompat.app.AppCompatActivity;
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 = "leo";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btn= findViewById(R.id.btn);
//点击事件
btn.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view) {
Log.e(TAG,"onClink:");
}
});
//长按事件
btn.setOnLongClickListener(new View.OnLongClickListener(){
@Override
public boolean onLongClick(View view) {
Log.e(TAG,"onLongClick:");
return false;
}
});
//触摸事件
btn.setOnTouchListener(new View.OnTouchListener(){
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
Log.e(TAG,"onTouch:"+motionEvent.getAction());
return false;
}
});
}
public void leoClick(View view) {
Log.e(TAG,"OnClink:");
}
}
三:实现悬浮或者点击时,样式的切换
入下图所示,通过drawable中selector实现图标的更改


浙公网安备 33010602011771号