安卓的单击按钮事件
对于我们这些初学者来说,给一个安卓程序加上一个按钮,并在按钮背后加上一个事件,就已经感觉很难了,在学习中我学会了两种方法,一种是设置监听器,另外一种则是简单的方法,即在可视化操作界面下,添加按钮单击事件。(下面以小写字符串转化为大写的程序进行说明)
1.设置监听器:
对于一个按钮,先初始化一个按钮,当然我们要先绑定其id,然后初始化一个对象
<Button android:id="@+id/bnt1" android:layout_width="match_parent" android:layout_height="wrap_content" android:onClick="btnConvert_Click" android:text="转 换" />
Button help=(Button)findViewById(R.id.bhelp);
对于第一种方式,我们以之前做的IRing项目(最然还没完工,当时只会设置监听的方法,感觉好麻烦!)为例:
setOnClickListener()函数则是它的单击监听函数,里边的变量则是所谓的监听器,然后加一个函数 public void onClick(View arg0),每次点击按钮就运行这个函数。
help.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View arg0) { // TODO Auto-generated method stub str="根据时间不同,修改铃声"; display.setText(str); } });
2.第二种方式,我们以大写字符串转换为小写字符串为例:
这种方式是老师教给我们的,则是直接在可视化操作界面下对其进行编程,方便好用。当你在可视化界面下加了一个按钮,然后在它的右下方Properties框框里边,选择它的View属性下的On Click,在对应的框内直接将你定义的单击函数粘贴进去,这样就是说当你单击的时候,运行的函数就是你粘贴进去的那个函数,比如我的是btnConvert_Click(),则将btnConvert_Click粘过去(没有括号)。
public void btnConvert_Click(View v) { String s=""; s=etl.getText().toString(); s=s.toUpperCase(); result.setText("大写字符串:"+s); }
这样当我单击了转换按钮的时候,就运行btnConvert_Click()这个函数了。
运行效果:
总结:
总体来讲,两种方式都可以实现按钮单击事件,但是对于我们编程序来讲,感觉是不是越方便越好呢,我认为第二种方式(老师教给我们的这种)比较好用,在自己学习中之所以感觉不懂或者繁琐,是因为用的设置监听器的方法,乱糟糟的。