安卓开发 监听虚拟按键_安卓按钮的监听事件的两种方式

按钮的监听事件

在上面的应用截图中我们看到游戏开始界面使用了"开始游戏"和"退出游戏"的两个按钮。两个按钮分别触发正式游戏和关闭游戏程序的两个行为。所以要为两个按钮的点击事件(OnClickListener)绑定监听器。

安卓中为按钮绑定监听器的方式有两种:①布局文件中声明②代码中新建监听器并绑定;

在实现"BY战机"中,我采用了第二种,即在代码中建立监听器。

为了以后复习学习和网友交流,在此我同时介绍一下第一种绑定按钮监听器的方法。

布局文件中声明绑定按钮监听器

布局文件中声明就像为布局声明属性一样,只需要在按钮的属性字段中添加:

android:onClick="Button_Click"

然后在java代码中定义Button_Click方法,定义按钮点击触发事件的内容

public void Button_Click (View source) {

//补充代码:点击按钮后的动作

}

代码中新建监听器并绑定按钮监听器

话不多说,先上代码:

按钮的监听事件

button_begin=(Button)findViewById(R.id.button_begin);

button_exit=(Button)findViewById(R.id.button_exit);

Button.OnClickListener control=new View.OnClickListener() {

@Override

public void onClick(View view) {

switch (view.getId()){

case R.id.button_begin:

Intent game=new Intent(MainActivity.this,game_main.class);

startActivity(game);

break;

case R.id.button_exit:

System.exit(0);

break;

}

}

};

button_begin.setOnClickListener(control);

button_exit.setOnClickListener(control);

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

button_begin=(Button)findViewById(R.id.button_begin);

button_exit=(Button)findViewById(R.id.button_exit);

Button.OnClickListenercontrol=newView.OnClickListener(){

@Override

publicvoidonClick(Viewview){

switch(view.getId()){

caseR.id.button_begin:

Intentgame=newIntent(MainActivity.this,game_main.class);

startActivity(game);

break;

caseR.id.button_exit:

System.exit(0);

break;

}

}

};

button_begin.setOnClickListener(control);

button_exit.setOnClickListener(control);

这是"BY战机"项目中我为"开始游戏"和"结束游戏"绑定监听器及其动作代码。

先通过findViewById获取两个按钮,通过代码:button_begin.setOnClickListener(control);

为两个按钮设置它们的监听器为control,在上面的代码中我定义control的内容,为了让两个按钮共用一个监听器,我使用view.getId()获取点击的按钮的来源ID,然后通过switch选择语句区分两个按钮的执行动作:startActivity(game) 【进入游戏activity】和System.exit(0)【退出当前安卓程序】。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值