• 安卓基础(点击事件)


    今天学习了安卓开发的点击事件,下面我来叙述一下实现点击时间得基本方法:

    第一种:在要被点击得控件中加onclick属性

    格式:android:onClick="方法名" 例如andoroid:onClick="oneClick"

    接下来在对应这个布局得activity中写一个方法,格式为:

    public void 方法名(View view ){

    方法得执行代码;

    例如:

    public void oneOnclick(View view){
    Log.d(TAG,"...1");
    if(view instanceof TextView){
    String a = ((TextView)view).getText().toString();
    Log.d(TAG,"name =="+ a);//打印每个键所包含得文本内同容
        }
    }
    第一种实例(计算器)代码:
    activity代码:
    package com.example.text2;
    
    import androidx.appcompat.app.AppCompatActivity;
    
    import android.os.Bundle;
    import android.util.Log;
    import android.view.View;
    import android.widget.TextView;
    
    public class MainActivity extends AppCompatActivity {
    private static final String TAG = "MainActivity";
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.calculatorlayout);
        }
    public void oneOnclick(View view){
        Log.d(TAG,"...1");
        if(view instanceof TextView){
            String a = ((TextView)view).getText().toString();
            Log.d(TAG,"name =="+ a);//打印每个键所包含得文本内同容
        }
    }
    }

    xml文件带代码:

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent"
        android:layout_height="match_parent"
    
        android:orientation="vertical">
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="80dp"
        android:layout_gravity="center"
        android:orientation="horizontal"
        >
        <TextView
            android:onClick="oneOnclick"
            android:layout_width="0dp"
    android:layout_height="match_parent"
             android:text="C"
            android:gravity="center"
            android:textSize="30sp"
            android:background="@drawable/selector"
            android:layout_weight="1"></TextView>
        <TextView
            android:onClick="oneOnclick"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:text="+/-"
           android:gravity="center"
            android:textSize="30sp"
            android:background="@drawable/selector"
            android:layout_weight="1"></TextView>
        <TextView
            android:onClick="oneOnclick"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:text="%"
           android:gravity="center"
            android:textSize="30sp"
            android:background="@drawable/selector"
            android:layout_weight="1"></TextView>
        <TextView
            android:onClick="oneOnclick"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:text="÷"
            android:gravity="center"
            android:textSize="30sp"
            android:background="@drawable/selector_oring"
    
            android:layout_weight="1"></TextView>
    
    </LinearLayout>
    
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="80dp"
            android:layout_gravity="center"
            android:orientation="horizontal"
            >
            <TextView
                android:onClick="oneOnclick"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:text="1"
                android:gravity="center"
                android:textSize="30sp"
                android:background="@drawable/selector"
                android:layout_weight="1"></TextView>
            <TextView
                android:onClick="oneOnclick"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:text="2"
                android:gravity="center"
                android:textSize="30sp"
                android:background="@drawable/selector"
                android:layout_weight="1"></TextView>
            <TextView
                android:onClick="oneOnclick"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:text="3"
                android:gravity="center"
                android:textSize="30sp"
                android:background="@drawable/selector"
                android:layout_weight="1"></TextView>
            <TextView
                android:onClick="oneOnclick"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:text="÷"
                android:gravity="center"
                android:textSize="30sp"
                android:background="@drawable/selector_oring"
    
                android:layout_weight="1"></TextView>
    
        </LinearLayout>
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="80dp"
            android:layout_gravity="center"
            android:orientation="horizontal"
            >
            <TextView
                android:onClick="oneOnclick"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:text="4"
                android:gravity="center"
                android:textSize="30sp"
                android:background="@drawable/selector"
                android:layout_weight="1"></TextView>
            <TextView
                android:onClick="oneOnclick"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:text="5"
                android:gravity="center"
                android:textSize="30sp"
                android:background="@drawable/selector"
                android:layout_weight="1"></TextView>
            <TextView
                android:onClick="oneOnclick"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:text="6"
                android:gravity="center"
                android:textSize="30sp"
                android:background="@drawable/selector"
                android:layout_weight="1"></TextView>
            <TextView
                android:onClick="oneOnclick"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:text="x"
                android:gravity="center"
                android:textSize="30sp"
                android:background="@drawable/selector_oring"
    
                android:layout_weight="1"></TextView>
    
        </LinearLayout>
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="80dp"
            android:layout_gravity="center"
            android:orientation="horizontal"
            >
            <TextView
                android:onClick="oneOnclick"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:text="7"
                android:gravity="center"
                android:textSize="30sp"
                android:background="@drawable/selector"
                android:layout_weight="1"></TextView>
            <TextView
                android:onClick="oneOnclick"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:text="8"
                android:gravity="center"
                android:textSize="30sp"
                android:background="@drawable/selector"
                android:layout_weight="1"></TextView>
            <TextView
                android:onClick="oneOnclick"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:text="9"
                android:gravity="center"
                android:textSize="30sp"
                android:background="@drawable/selector"
                android:layout_weight="1"></TextView>
            <TextView
                android:onClick="oneOnclick"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:text="-"
                android:gravity="center"
                android:textSize="30sp"
                android:background="@drawable/selector_oring"
                android:layout_weight="1"></TextView>
    
        </LinearLayout>
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="80dp"
            android:layout_gravity="center"
            android:orientation="horizontal"
            >
            <TextView
                android:onClick="oneOnclick"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:text="0"
                android:gravity="center"
                android:textSize="30sp"
                android:layout_weight="2"
                android:background="@drawable/selector"
                ></TextView>
            <TextView
                android:onClick="oneOnclick"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:text="."
                android:gravity="center"
                android:textSize="30sp"
                android:background="@drawable/selector"
                android:layout_weight="1"></TextView>
    
            <TextView
                android:onClick="oneOnclick"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:text="="
                android:gravity="center"
                android:textSize="30sp"
                android:background="@drawable/selector_oring"
                android:layout_weight="1"></TextView>
    
        </LinearLayout>
    </LinearLayout>

    白色外边框代码:

    <?xml version="1.0" encoding="utf-8"?>
    <shape
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="rectangle">
        <solid android:color="#ffffff"/>
        <stroke android:color="#333333" android:width="1dp"/>
    </shape>

    点击之后变色代码:

    <?xml version="1.0" encoding="utf-8"?>
    <shape
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="rectangle">
        <solid android:color="#999999"/>
        <stroke android:color="#333333" android:width="1dp"/>
    </shape>

    橙色外边框代码:

    <?xml version="1.0" encoding="utf-8"?>
    <shape
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="rectangle">
        <solid android:color="#e47f24"/>
        <stroke android:color="#333333" android:width="1dp"/>
    </shape>

    点击之后变色代码:

    <?xml version="1.0" encoding="utf-8"?>
    <shape
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="rectangle">
        <solid android:color="#b55f1c"/>
        <stroke android:color="#333333" android:width="1dp"/>
    </shape>

    白色部分选择事件代码:

    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/shape_rectangle_grey" android:state_pressed="true"/>
        <item android:drawable="@drawable/shape_rectangle"/>
    </selector>

    橙色部分选择事件代码:

    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true" android:drawable="@drawable/shape_rectangle_oring_gery"/>
        <item android:drawable="@drawable/shape_rectangle_oring"/>
    </selector>

    安卓手机端开发截图:

    点击控件,显示台截图:

    第二种:通过id声明来找到控件并对其进行设置点击事件

    第一步:给对应的控件设置id

    第二步:找到控件

    第三步:设置点击事件

    package com.example.text2;
    
    import androidx.appcompat.app.AppCompatActivity;
    
    import android.os.Bundle;
    import android.util.Log;
    import android.view.View;
    import android.widget.TextView;
    
    public class MainActivity extends AppCompatActivity implements View.OnClickListener {
    private static final String TAG = "MainActivity";
        private TextView cancel;
        private TextView plus_red;
        private TextView divisible;
        private TextView chu;
        private TextView one;
        private TextView two;
        private TextView three;
        private TextView plus;
        private TextView four;
        private TextView five;
        private TextView six;
        private TextView multiply;
        private TextView senven;
        private TextView eight;
        private TextView nine;
        private TextView cut;
        private TextView zero;
        private TextView spot;
        private TextView equal;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.calculatorlayout_byid);
            initview();
            //设置点击事件
            initClick();
        }
    
        private void initview() {
             cancel = this.findViewById(R.id.cancel);
             plus_red = this.findViewById(R.id.plus_red);
            divisible = this.findViewById(R.id.divisible);
            chu = this.findViewById(R.id.chu);
            one = this.findViewById(R.id.one);
            two = this.findViewById(R.id.two);
            three = this.findViewById(R.id.three);
            plus = this.findViewById(R.id.plus);
            four = this.findViewById(R.id.four);
            five = this.findViewById(R.id.five);
            six = this.findViewById(R.id.six);
            multiply = this.findViewById(R.id.multiply);
            senven = this.findViewById(R.id.senven);
            eight = this.findViewById(R.id.eight);
            nine = this.findViewById(R.id.nine);
            cut = this.findViewById(R.id.cut);
            zero = this.findViewById(R.id.zero);
            spot = this.findViewById(R.id.spot);
            equal = this.findViewById(R.id.equal);
        }
    /*
    设置点击事件
     */
        public  void  initClick(){
            //第一种设置方式
            cancel.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    Log.d(TAG,"点击键值为"+ ((TextView)v).getText().toString());
                }
            });
            divisible.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    Log.d(TAG,"点击键值为"+ ((TextView)v).getText().toString());
                }
            });
            chu.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    Log.d(TAG,"点击键值为"+ ((TextView)v).getText().toString());
                }
            });
            plus.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    Log.d(TAG,"点击键值为"+ ((TextView)v).getText().toString());
                }
            });
            four.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    Log.d(TAG,"点击键值为"+ ((TextView)v).getText().toString());
                }
            });
            five.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    Log.d(TAG,"点击键值为"+ ((TextView)v).getText().toString());
                }
            });
            six.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    Log.d(TAG,"点击键值为"+ ((TextView)v).getText().toString());
                }
            });
    
    //第二中设置方法
             plus_red.setOnClickListener(this);
             one.setOnClickListener(this);
             two.setOnClickListener(this);
             three.setOnClickListener(this);
            multiply.setOnClickListener(this);
            senven.setOnClickListener(this);
            eight.setOnClickListener(this);
            nine.setOnClickListener(this);
            cut.setOnClickListener(this);
            zero.setOnClickListener(this);
            spot.setOnClickListener(this);
            equal.setOnClickListener(this);
        }
    
        @Override
        public void onClick(View v) {
            Log.d(TAG,"点击键值为"+ ((TextView)v).getText().toString());
        }
    }

    安卓开发截图和第一种方法一样就不截图了,控制台截图(为方便区分我输出值为中文):

    这是今天所学,明天继续加油,丰富自己的知识储备!

     
  • 相关阅读:
    MySQL事务隔离级别和MVCC
    windows环境下查看端口是否被占用
    jar找不到问题解决
    Java注解
    Fastjson
    mybatis
    Idea快捷键
    Date与String的相互转换
    Windows快捷键
    [转]linux awk命令详解
  • 原文地址:https://www.cnblogs.com/yangxionghao/p/12253017.html
Copyright © 2020-2023  润新知