安卓开发学习之014 Button应用详解(样式、背景、按钮单击、长按

一、Button简介

按钮也是继承自TextView

二、XML定义方法<Buttonandroid:id=”@+id/button01″android:layout_width=”wrap_content”android:layout_height=”wrap_content”android:text=”Button_Click”/>

id设置按钮唯一编号 text设置按钮上显示的文本

三、设置按钮背景图片

使用background属性设置背景图片

<!– 背景设置–><Button=”@mipmap/yxs”android:text=”Background”/>四、设置样式

主要是定义按钮三种状态下分别对应的背景样式 默认状态、获得焦点(android:state_focused=“true”)、 按下时(android:state_pressed=“true”)

<!– 使用单一shape定义样式–><Button=<Button=<Button=”@drawable/selector_button_start”android:text=”Button_Selector2″/>

三个文件drawable文件代码如下:

1.res/drawable/bg_border.xml=<corners<gradient=”#ff0000″android:type=”linear”/><!– 间隔 –><padding=<size<strokeandroid:width=”2dp”android:color=”#f0f”/></shape>2.res/drawable/button_selector.xml<?xml version=”1.0″ encoding=”utf-8″?><selector =<stroke=”#87CEFF”/><padding=<corners=>=”true”><shape><gradient==”sweep”/><strokeandroid:width=”2dp”android:color=”#dcdcdc”/><corners=”10dp”android:topRightRadius=”10dp”/><padding=>><shape><!– 渐变 –><gradient=<stroke=<corners=”10dp”android:topRightRadius=”10dp”/><padding=></item></selector>

效果如下:

3.res/drawable/selector_button_start.xml====>四、按钮点击事件的处理方式

按钮点击有四种处理方法。 第一种是通过onClick属性,,通过这个属性设置处理点击事件的方法名,在Activity中实现这个方法。 第二种是典型的事件监听机制setOnClickListener的应用形式,下面详细说明这四种方法。

1.通过onClick属性设置处理方法

  在XML布局文件中设置Button的属性:   android:onClick=”yourMethodName”   然后在该布局文件对应的Acitivity中实现该方法: 需要注意的是这个方法必须符合三个条件: 1.public 2.返回void 3.只有一个参数View,这个View就是被点击的这个控件。 也可为多个Button设置同一个方法名,然后在方法内使用switch方法判断点击的是哪个按钮

如下:

<Buttonandroid:layout_width=”wrap_content”android:layout_height=”wrap_content”android:background=”@drawable/button_selector”android:onClick=”MyClick”android:text=”Button_onClick”/>java代码中/*** 在XML中配置置android:onClick=”MyClick”* 必须设置为public void*/(View view) {Toast.makeText(ButtonActivity.this, “android:onClick=\”MyClick\””, Toast.LENGTH_SHORT).show();}2.使用setOnClickListener添加监听器对象Button button01 = (Button) findViewById(R.id.button01);//短按点击事件监听button01.setOnClickListener(new View.OnClickListener() {(View v) {Toast.makeText(ButtonActivity.this, “OnClickListener”, Toast.LENGTH_SHORT).show();}});

此种方法还有几个变种: 1.自定义类实现OnClickListener接口

//自定义类实现OnClickListener接口private MyOnClickListener mOnClickListener = new MyOnClickListener();.(View v) {switch (v.getId()) {//TODO}}}然后调用button01.setOnClickListener(mOnClickListener);button02.setOnClickListener(mOnClickListener);

此种方法的好处是当多个按钮要处理的事件逻辑是一样的话,不用每个按钮都写一个setOnClickListener监听事件,并实现Onclick方法

相信人生有挫折没有失败,相信生命的质量来自决不妥协的信念。

安卓开发学习之014 Button应用详解(样式、背景、按钮单击、长按

相关文章:

你感兴趣的文章:

标签云: