服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Android - Android 中图片和按钮按下状态变化实例代码解析

Android 中图片和按钮按下状态变化实例代码解析

2022-02-28 15:29太阳火神的美丽人生 Android

这篇文章通过实例代码给大家总结了android 中图片和按钮按下状态变化问题,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随脚本之家小编一起学习吧

1、图片设置背景选择器,以便点按或设置选中与否,背景切换

res/drawable/selector_settings_item_back.xml 

?
1
2
3
4
5
6
7
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
  <item android:state_focused="true" android:drawable="@color/settingsSelectedItem"/>
  <item android:state_pressed="true" android:drawable="@color/settingsSelectedItem"/>
  <item android:state_selected="true" android:drawable="@color/settingsSelectedItem"/>
  <item android:state_focused="false" android:drawable="@color/settingsItem"/>
</selector >

颜色值定义:

res/values/colors.xml 

?
1
2
3
4
5
<?xml version="1.0" encoding="utf-8"?>
<resources>
  <color name="settingsItem">#ffffff</color>
  <color name="settingsSelectedItem">#FFA500</color>
</resources>

2、圆角按钮,按下抬起切换背景,同时切换文字颜色

res/layout/activity_xxx.xml 

?
1
2
3
4
5
6
7
8
<Button
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_weight="1"
android:background="@drawable/selector_shape_corner_button"
  android:text="审批中" android:textColor="@drawable/selector_font_style_corner_button"
  android:textSize="13sp"
  />

其中引用了 res/drawable/ 下的两个 selector ,

一个是背景图片随点按抬起状态进行切换,一个是文本颜色随点按抬起进行切换。

res/drawable/selector_shape_corner_button.xml 

?
1
2
3
4
5
6
7
8
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
  <item android:state_focused="true" android:drawable="@drawable/shape_corner_button_fill"/>
  <item android:state_pressed="true" android:drawable="@drawable/shape_corner_button_fill"/>
  <item android:state_selected="true" android:drawable="@drawable/shape_corner_button_fill"/>
  <item android:state_focused="false" android:drawable="@drawable/shape_corner_button"/>
</selector >
 res/drawable/selector_font_style_corner_button 

shape_corner_button.xml

?
1
2
3
4
5
6
7
8
9
10
11
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
  android:shape="rectangle">
  <corners
    android:radius="5dp" />
  <solid
    android:color="#001da1f2" />
  <stroke
    android:width="1dp"
    android:color="#1da1f2" />
</shape>

shape_corner_button_fill.xml

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
  android:shape="rectangle">
  <corners
    android:radius="5dp" />
  <solid
    android:color="#ff1da1f2" />
  <stroke
    android:width="1dp"
    android:color="#1da1f2" />
</shape>
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
  <item android:state_focused="true" android:color="#ffffff"/>
  <item android:state_pressed="true" android:color="#ffffff"/>
  <item android:state_selected="true" android:color="#ffffff"/>
  <item android:state_focused="false" android:color="#1da1f2"/>
</selector >

总结

以上所述是小编给大家介绍的Android 中图片和按钮按下状态变化实例代码解析,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!

原文链接:https://blog.csdn.net/opengl_es/article/details/80558381

延伸 · 阅读

精彩推荐