超级原创xxMix android:onClick上帝啊,不知道有没有人用过,我用了,在网上好多鸟回答乱七八糟,自己找到了

android:onClick = “xx”

public void (View v) 记得函数参数匹配 根据多态性以及函数指针原理这里的函数会注册给android:onClick的监听器

这样每个button都可以使用onClck定义自己测处理方法,也可以共用,但是关于事件源的区分就没有那么方便了,可能需要获取坐标才能逻辑上判断是哪个按钮或者根据

完整例子

main.xml

<?xml version="1.0"encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

>

<TextView

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="@string/hello"

/>

<Button

android:onClick = "xxx"

android:text="ok" android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>

<Button

android:onClick = "xxx"

android:text="no" android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>

</LinearLayout>

MainActivity.java

package com.sms;

import android.app.Activity;

import android.os.Bundle;

import android.view.View;

import android.widget.Button;

import android.widget.Toast;

public class MainAcitivy extends Activity {

/** Called when the activity is first created. */

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

}

public void xxx(View v)

{

//可以直接转型但是注意有时候子类不匹配((Button)v).getText()

Button temp = (Button)v; //最好用instanceof判断子类型的实例,,注意子类型和子类不一样,面向对象设计原理

if(temp.getText().toString().trim().equalsIgnoreCase("ok"))

{

Toast.makeText(this,"ok ", Toast.LENGTH_SHORT).show();

}

if(temp.getText().toString().trim().equalsIgnoreCase("no"))

{

Toast.makeText(this,"no ", Toast.LENGTH_LONG).show();

}

}

public void xxxx(View v) //也可以单独映射自己的方法,但是单独写代码过于冗余所以建议统一 使用getText判断仍然是好方法,需要记住处理函数参数

{

Toast.makeText(this,"xxxx", Toast.LENGTH_SHORT).show();

}

}

按钮上的文字区分事件源

更多相关文章

  1. Android NDK开发——操作JNI函数以及复杂对象的传递
  2. Android 4.4 Dialog 被状态栏遮挡的解决方法
  3. android系统裁剪方法
  4. DIY osc android 客户端 之 方法论
  5. Android webview和js互相调用实现方法
  6. 深入解析android log的分析方法(1)

随机推荐

  1. Android(安卓)log日志输出到文件
  2. Android(安卓)EditText禁止复制粘贴
  3. Android(安卓)listview使用
  4. android EditText不弹出软键盘的方法
  5. 通过ActivityManager 管理activity
  6. HttpHuiApplication--下载图片url,HttpUR
  7. Android(安卓)- SwitchButton开关按钮
  8. clock时钟
  9. 多线程下载测试TestDownload
  10. TextView获取行数