安卓中点击按钮变换颜色--实现更好的人机交互

安卓中很多按钮点击都会有颜色变化的效果,其实是为了实现更好的人机交互界面,下面就来说一下怎么实现

首先在布局文件中插入一个按钮控件

安卓中点击按钮变换颜色--实现更好的人机交互_第1张图片

其中background是引用的drable文件下的button_login.xml文件,那么接下来看button_login.xml中的代码

安卓中点击按钮变换颜色--实现更好的人机交互_第2张图片

可见,当按钮没被点击时用到了item中android:state_window_focused="false" 属性,并且又引用了drawable下的另一个xml文件button_login_normal

当按钮被点击时用到了item中的android:state_pressed="true" 属性,并且引用了drawable中的button_login_pressed文件

下面来看看剩下的两个XML文件

button_login_normal为

安卓中点击按钮变换颜色--实现更好的人机交互_第3张图片

其中 android:shape="rectangle"是将按钮设置为圆角

 是按钮的背景颜色

是圆角的半径

再来看button_login_pressed

安卓中点击按钮变换颜色--实现更好的人机交互_第4张图片

其实跟上一个button_login_normal文件中的内容基本一致,就是背景颜色不一样。

依次关联,不难发现,在Button中背景颜色调用了button_login.xml,而在button_login.xml中又分为了按钮被点击和没有被点击时分别调用了button_login_pressed和button_login_normal。最终实现了按钮被点击时,颜色变化的效果。

来看下效果

这是没有被点击的时候安卓中点击按钮变换颜色--实现更好的人机交互_第5张图片

这是被点击了之后

安卓中点击按钮变换颜色--实现更好的人机交互_第6张图片

当然颜色变化之后一闪而过,并不是点了之后就直接由蓝色变成灰色了。

你可能感兴趣的:(安卓中点击按钮变换颜色--实现更好的人机交互)