java安卓开发button问题,button如何设置才能知道哪个键被按下,比如有多个键,按下后给

java安卓开发button问题,button如何设置才能知道哪个键被按下,比如有多个键,按下后给主函数一个信息让主函数做出判断,如何实现?... java安卓开发button问题,button如何设置才能知道哪个键被按下,比如有多个键,按下后给主函数一个信息让主函数做出判断,如何实现? 展开
 我来答
大大大大流氓兔
推荐于2016-02-22 · TA获得超过302个赞
知道小有建树答主
回答量:189
采纳率:96%
帮助的人:121万
展开全部
亲,以下代码可以实现判断你点击了哪个按钮,但是这个方法是我在学习android过程中在书上学到的,那个Button.OnClickListener test = new Button.OnClickListener(){};部分我不是很理解,如果楼主理解的话,还请给我解释一下哦!~~像是内部类!~~~~
不过确实能叛别你点击了哪个按钮,希望能帮到你,还希望采纳哦!~~~

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

public class MainActivity extends Activity {
Button btn1 = null;
Button btn2 = null;
TextView show = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn1 = (Button)findViewById(R.id.btn1);
//这里是注册监听
btn1.setOnClickListener(test);
btn2 = (Button)findViewById(R.id.btn2);
btn2.setOnClickListener(test);
show = (TextView)findViewById(R.id.show);
}
//这里写了这个监听类
Button.OnClickListener test = new Button.OnClickListener() {

@Override
public void onClick(View v) {
if(v == btn1){
show.setText("单击了button1");
}
else if(v == btn2){
show.setText("单击了button2");
}
}
};
}
更多追问追答
追问
onClick()函数中可以访问onCreate()中的变量?
追答
亲,这个Button.OnClickListener test = new Button.OnClickListener(){};MainActivity这个类中的匿名内部类,类中的方法匿名内部类是可以访问该类中的成员的!~~~btn1,btn2 , 和show这三个变量都是MainActivity类中的成员,是在MainActivity中定义的,只是在OnCreat()方法中初始化了而已,所以那个MainActivity类中的匿名内部类当然可以访问这几个变量了啊!~~~
如果亲不懂得话,建议学习一下java的匿名内部类相关知识!~~~~
希望能够帮到你!~~~
没有响应m2
2014-05-05 · TA获得超过8387个赞
知道大有可为答主
回答量:7579
采纳率:33%
帮助的人:3495万
展开全部
每个button都有自己注册的事件监听器 当你按下对应的按键的时候 就会执行监听器中的代码 如果按下多个按钮 会分别执行自己监听的代码
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式