Android UI 设计——Button 控件

这个是大家在熟悉不过的了,初学者在学习的时候都是最先使用Button进行练习。


他控件的显示设置也很简单,如TextView一样包括:id,宽,高,名称(也就是显示的文字)等的设置。在此不再赘述。


点击事件


Button 最常见的一种使用就是使用监听器,实现点击事件。首先在Activity的onCreate方法中添加如下代码:


方式一:通过匿名内部类的方法来实现监听。


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

btnSecond.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View view) {

Intent intentSecond = new Intent(MainActivity.this,MainActivity.class);

startActivity(intentSecond);

}

});


方式二:通过实现接口的方法来实现监听。


public class MainActivity extends BaseActivity implements View.OnClickListener {

private Button btnSecond;

@Override

protected void onCreate(Bundle savedInstanceState) {

Log.d("Activity", this.toString());

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

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

btnSecond.setOnClickListener(this);

}

@Override

public void onClick(View view) {

switch (view.getId()){

case R.id.btnSecond:

Intent intentSecond = new Intent(MainActivity.this,SecondActivity.class);

startActivity(intentSecond);

break;

default:

break;

}

}

}


按钮背景设置


此处背景的设置是在AndroidStudio软件中设置运行的,Ecplise中可能稍有不同。


在layout布局文件中添加代码:android:background=""进行设置,属性值可以是十六进制的背景色,例如:“#ff00ff”;也可以是引用values中自己设定的color值,例如:”@color/red”;也可以是drawable中自己设置的xml文件,例如:”@drawable/btn_background”。


前两种主要用于设置纯色的背景,但是这种设置并不人性化,因为我们都知道,通常一个按钮当我们按下去的时候他的颜色会变深,以通知我们选中了按钮。这是比较人性化的。但是纯色的背景只有一个,我们按下的时候并不知道是否选中,因此我们需要设置两种颜色来当做按钮的背景。这种只能通过第三种方法来实现。


在drawable中新建一个xml文件。


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

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

<item android:drawable="@mipmap/buttonpressed_pink" android:state_pressed="true"/>

<item android:drawable="@mipmap/button_pink"/>

</selector>


在layout的布局文件中设置按钮的背景:


<Button

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="Button"

android:background="@drawable/btn_background"/>


结果如下:


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值