zoukankan      html  css  js  c++  java
  • Android--按钮点击事件

    Android中Button的点击事件非常简单,主要是一个内部类的问题

    在界面上存在两个按钮和一个文本框,点击不同按钮的时候文本框中显示不同按钮的文字信息

    <?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" >
    
        
    
        <EditText
            android:id="@+id/txtPassword"
            android:text=""
            android:layout_width="fill_parent"
            android:layout_height="70px"
            />
    
        <Button
            android:id="@+id/btnFirst"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="第一个" />
    
        <Button
            android:id="@+id/btnSecond"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="第二个" />
        
    </LinearLayout>
    布局代码xml内容

    使用以上代码可以看到上图所示界面,至于如何处理触发事件请参考如下代码

    package com.git.ch3;
    
    import android.os.Bundle;
    import android.app.Activity;
    import android.app.AlertDialog;
    import android.content.Context;
    import android.content.DialogInterface;
    import android.text.util.Linkify;
    import android.view.Menu;
    import android.view.MenuItem;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.view.ViewGroup;
    import android.widget.BaseAdapter;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.Gallery;
    import android.widget.ImageView;
    import android.widget.TextView;
    import android.widget.Toast;
    
    public class MainActivity extends Activity {
    
        private Button btnFirst=null;
        private Button btnSecond=null;
        private EditText lblTitle=null;
        
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            
            btnFirst=(Button)findViewById(R.id.btnFirst);
            btnSecond=(Button)findViewById(R.id.btnSecond);
            lblTitle=(EditText)findViewById(R.id.txtPassword);
            
            btnFirst.setOnClickListener(new Button.OnClickListener() {
                @Override
                public void onClick(View v) {
                    String first= btnFirst.getText().toString();
                    lblTitle.setText(first);
                }
            });
            
            btnSecond.setOnClickListener(new ButtonClick());
        }
        
        private class ButtonClick implements OnClickListener{
    
            @Override
            public void onClick(View v) {
                String first= btnSecond.getText().toString();
                lblTitle.setText(first);
            }
            
        }
    }
    按钮点击事件

    两个按钮分别触发了不同的事件,但是两者上有一定的区别,这里使用到了java中的内部类

  • 相关阅读:
    【转载】VM Role实战: Azure 平台上传虚拟机C 盘不能大于64GB
    Asp.Net MVC项目编译View
    Notepad测试数据库连接
    【转载】使用远程桌面Remote desktop访问Azure虚拟机
    【转载】Azure Blob Storage 云存储中实现大文件分块断点续传
    jQuery Mobile 笔记(1) jQuery Mobile页面结构
    【转载】使用Azure SDK 1.6 ,VM Role里加载Azure Drive方案
    大把大把的时间 你要怎么把握啊
    asp.net 本质论学习
    在客户端用javascript或VBSCRIPT生成WORD文档(转)
  • 原文地址:https://www.cnblogs.com/qingyuan/p/4236922.html
Copyright © 2011-2022 走看看