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中的内部类

 

时间: 2024-09-13 17:41:38

Android--按钮点击事件的相关文章

Android Listview中Button按钮点击事件冲突解决办法

  今天做项目时,ListView中含有了Button组件,心里一早就知道肯定会有冲突,因为以前就遇到过,并解决过,可惜当时没有记录下来. 今天在做的时候,继续被这个问题郁闷了一把,后来解决后,赶紧来记录下,以便日后参考.      首先,其实Listview中Button按钮点击事件冲突这种问题压根就不是太大的问题,因为我们完全可以将一个TextView的Backgroud设置成一个selector,也可以将一个TextView设计成一个按钮的样子,这样就可以绕过ListView和Button

Android开发20——单个监听器监听多个按钮点击事件

一.单个按钮点击事件的监听   方法一 /** * 从网络上获取图片 * * @author 徐越 * */ public class MainActivity extends Activity { private EditText txtPath; private Button btnShowImage; private ImageView imgView; @Override public void onCreate(Bundle savedInstanceState) { super.on

android-安卓中按钮点击事件无响应

问题描述 安卓中按钮点击事件无响应 我在xml中写了一个按钮,对这个按钮设置了setOnClickListener事件,运行时点击按钮没反应,小白一枚,特来请教 解决方案 Button2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent mIntent = new Intent(); mIntent.setClass(MainActivity.this, R

javascrpit-给一个按钮点击事件,点击的同时给按钮添加一个样式,怎么样使进行其他操作的时候恢复按钮的样式

问题描述 给一个按钮点击事件,点击的同时给按钮添加一个样式,怎么样使进行其他操作的时候恢复按钮的样式 比如点击弹出个对话框,我关闭对话框后,按钮恢复原来的样式 解决方案 对话框插件一般有关闭事件,你配置那个关闭事件删除添加的高亮样式即可.具体看你的对话框API了

android widget 点击事件问题

问题描述 android widget 点击事件问题 一个简单的widget,点击后可以打开一个Activity. 但是当我把widget添加到桌面后,我去看了一会视频之后,然后再退出视频, 回头去点击widget就打不开Activity了. 无意中发现的这个问题,不知道怎么处理.求教育. 另附上widget里onUpdate的代码 @Override public void onUpdate(Context context, AppWidgetManager appWidgetManager,

android-我的安卓按钮点击事件无法运行,求解答

问题描述 我的安卓按钮点击事件无法运行,求解答 一点击按钮就停止运行,但是编译单个java文件就没问题,求解答,求大神们解答,谢谢啦 解决方案 没图没代码没错误日志没法脑补 解决方案二: 你把代码和log贴出来呀 解决方案三: 解决方案四: 没有button 没有监听器,当然不行呀 解决方案五: 随便写了下,你首先要找到button,然后要有个监听来监听button的点击事件

多线程-c#如何在子线程中获取form主线程中按钮点击事件

问题描述 c#如何在子线程中获取form主线程中按钮点击事件 如何在子线程中获取form主线程中按钮点击事件,子线程B中定义了一个新类classnew,获取点击事件也是在新类classnew中,并且获取完点击事件以后执行此类中下边的任务. 解决方案 你可以主线程中得到点击事件后,发送一个Event事件通知等告诉子线程,然后子线程就可以进行后面的任务处理 解决方案二: 不知道你说的获取事件是什么意思,是事件挂钩还是获得挂钩的事件处理函数的委托.请你说清楚. 解决方案三: 主线程中得到点击事件后,发

网页-jquery.mobile a标签的 按钮 点击事件问题

问题描述 jquery.mobile a标签的 按钮 点击事件问题 在 网页中 的文本框输入文字后,点击 jquery.mobile a标签的 按钮,要点击两次才能触发绑定的 事件, 第一次点击,隐藏键盘,第二次点击,触发 事件,在 ios 手机上这样,安卓没问题 解决方案 直接给a起个id,用jquery直接绑定事件试试.. 解决方案二: 就是 你说的 这样弄的

界面-QT按钮点击事件,怎么点击的是哪一个按钮

问题描述 QT按钮点击事件,怎么点击的是哪一个按钮 qt客户端程序中动态创建多个按钮,点击进入同一个界面,但点击不同按钮时界面上显示不同数据,要怎么才能实现啊 还有 qpushbutton的clicked事件能不能重写成带参数的信号传递啊 解决方案 你可以通过多加一层抽象来完成,通过子类化来完成,在创建BUTTON的时候通过多传入一个参数index,并且赋给该类的私有成员,等会点击的时候就可以根据index知道是哪个按钮触发的 class MyPushButton : public QPushB

在jsp页面上动态生成一个数组,如何通过按钮点击事件将数组显示在一个textarea里

问题描述 在jsp页面上动态生成一个数组,如何通过按钮点击事件将数组显示在一个textarea里 在jsp页面上动态生成一个数组,如何通过按钮点击事件将数组显示在一个textarea里 解决方案 按钮添加click事件,直接document.getElementById('textarea的id').value=arr[需要显示的数据项下标] 解决方案二: 先得到数组,比如说是arrA,然后var strVal = JSON.stringify(arrA);这是把把一个数据对像转换成字符串.然后