zoukankan      html  css  js  c++  java
  • 计算器(UI事件)给按钮添加监听器

    <?xml version="1.0" encoding="utf-8"?>
    <GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context="com.hanqi.testapp2.MainActivity"
        android:rowCount="5"
        android:columnCount="4">
    
        <TextView
            android:layout_width="match_parent"
            android:layout_height="50dp"
            android:layout_columnSpan="4"
            android:id="@+id/tv_1"
            android:text="7"
            android:textSize="30sp"
            android:paddingRight="10dp"
            android:gravity="right|center_vertical|top"
            android:textColor="#0f0"
            android:layout_rowWeight="8" />
    
        <Button android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="C"
            android:id="@+id/bt_C"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"/>
    
        <Button android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="DEL"
            android:id="@+id/bt_DEL"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"/>
    
        <Button android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="+/-"
            android:id="@+id/bt_zhengfu"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"/>
    
        <Button android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="÷"
            android:id="@+id/bt_chu"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"/>
    
        <Button android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="7"
            android:onClick="bt7_OnClick"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"/>
    
    
        <Button android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="8"
            android:onClick="bt8_OnClick"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"/>
    
        <Button android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="9"
            android:id="@+id/bt9"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"/>
    
        <Button android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="+"
            android:id="@+id/bt_add"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"/>
    
        <Button android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="4"
            android:id="@+id/bt4"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"/>
    
        <Button android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="5"
            android:id="@+id/bt5"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"/>
    
        <Button android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="6"
            android:id="@+id/bt6"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"/>
    
        <Button android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="—"
            android:id="@+id/bt_jian"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"/>
    
        <Button android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="1"
            android:id="@+id/bt1"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"/>
    
        <Button android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="2"
            android:id="@+id/bt2"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"/>
    
        <Button android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="3"
            android:id="@+id/bt3"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"/>
    
        <Button android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="×"
            android:id="@+id/bt_cheng"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"/>
    
        <Button android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="0"
            android:layout_columnSpan="2"
            android:layout_gravity="fill_horizontal"
            android:id="@+id/bt0"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"/>
    
        <Button android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="."
            android:id="@+id/bt_dian"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"/>
    
        <Button android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="="
            android:id="@+id/bt_dengyu"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"/>
    </GridLayout>
    activity_main.xml
    package com.hanqi.testapp2;
    
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.TextView;
    
    public class MainActivity extends AppCompatActivity {
    
        TextView tv_1;
    
        Button bt9;
        Button bt4;
        Button bt5;
        Button bt6;
        Button bt_add;
        Button bt_jian;
        Button bt1;
        Button bt2;
        Button bt3;
        Button bt_cheng;
        Button bt0;
        Button bt_dian;
        Button bt_dengyu;
        Button bt_chu;
        Button bt_C;
        Button bt_DEL;
        Button bt_zhengfu;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            tv_1=(TextView)findViewById(R.id.tv_1);
    
            //事件源
            bt9=(Button)findViewById(R.id.bt9);
            bt4=(Button)findViewById(R.id.bt4);
            bt5=(Button)findViewById(R.id.bt5);
            bt6=(Button)findViewById(R.id.bt6);
            bt_add=(Button)findViewById(R.id.bt_add);
            bt_jian=(Button)findViewById(R.id.bt_jian);
            bt1=(Button)findViewById(R.id.bt1);
            bt2=(Button)findViewById(R.id.bt2);
            bt3=(Button)findViewById(R.id.bt3);
            bt_cheng=(Button)findViewById(R.id.bt_cheng);
            bt0=(Button)findViewById(R.id.bt0);
            bt_dian=(Button)findViewById(R.id.bt_dian);
            bt_dengyu=(Button)findViewById(R.id.bt_dengyu);
            bt_chu=(Button)findViewById(R.id.bt_chu);
            bt_C=(Button)findViewById(R.id.bt_C);
            bt_DEL=(Button)findViewById(R.id.bt_DEL);
            bt_zhengfu=(Button)findViewById(R.id.bt_zhengfu);
    
            //给bt9按钮添加事件监听器  实现方式:1.匿名内部类
            bt9.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
    
                    //处理事件的业务逻辑
                    tv_1.setText("9");
    
                }
            });
    
            //2.普通内部类
    
            bt_OnClickListener bt_l=new bt_OnClickListener();
    
            bt_add.setOnClickListener(bt_l);
            bt4.setOnClickListener(bt_l);
            bt5.setOnClickListener(bt_l);
            bt6.setOnClickListener(bt_l);
            bt_jian.setOnClickListener(bt_l);
            bt1.setOnClickListener(bt_l);
            bt2.setOnClickListener(bt_l);
            bt3.setOnClickListener(bt_l);
            bt_cheng.setOnClickListener(bt_l);
            bt0.setOnClickListener(bt_l);
            bt_dian.setOnClickListener(bt_l);
            bt_dengyu.setOnClickListener(bt_l);
            bt_chu.setOnClickListener(bt_l);
            bt_C.setOnClickListener(bt_l);
            bt_DEL.setOnClickListener(bt_l);
            bt_zhengfu.setOnClickListener(bt_l);
        }
    
        //内部类实现OnClickListrner接口
        class bt_OnClickListener implements View.OnClickListener
        {
            @Override
            //v 事件源
            public void onClick(View v) {
    
                //转成按钮
                Button bt=(Button)v;
    
                //取得按钮上的文字
                String str = bt.getText().toString();
    
                //处理事件的业务逻辑  设置显示文字
                tv_1.setText(str);
    
            }
        }
    
        //3.关联方式
        public void bt7_OnClick(View v)
        {
            tv_1.setText("7");
        }
        public void bt8_OnClick(View v)
        {
            tv_1.setText("8");
        }
    }
    MainActivity.java

     

  • 相关阅读:
    虚拟机VMware配置centos7集群(亲测有效)
    linux虚拟机克隆后,虚拟机ping不通的解决方法
    VC++使用 GDI+等比例缩放图片,并且居中显示
    VS2015 编译OSG Plugins Giflib静态库
    Qt 读写文件操作
    OSG 常用快捷键(全屏、查看帧数、截屏)
    Navicat Premium v15 中文最新破解版(附:激活工具)
    redis 持久化机制及配置
    Redis 五种数据类型
    linux 安装redis
  • 原文地址:https://www.cnblogs.com/cycanfly/p/5455658.html
Copyright © 2011-2022 走看看