Home >Java >javaTutorial >Detailed explanation of the use of Androidselector background selector

Detailed explanation of the use of Androidselector background selector

高洛峰
高洛峰Original
2017-01-20 15:44:051349browse

In developing applications, in many cases it is necessary to design the background of the listview or button control. Here is a summary of the usage of the android selector:
1. Configure the Android selector in the drawable.
Save the following XML file into a .xml file named by yourself (such as item_bg.xml), and place the file in the drawable file. When using the system, use the corresponding according to the status of the list items in the ListView. Background picture.

<?xml version="1.0" encoding="utf-8" ?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- 默认时的背景图片-->
    <item android:drawable="@drawable/pic1" />
    <!-- 没有焦点时的背景图片-->
    <item android:state_window_focused="false" android:drawable="@drawable/pic1" />
    <!-- 非触摸模式下获得焦点并单击时的背景图片-->
    <item android:state_focused="true"  android:state_pressed="true"
       android:drawable="@drawable/pic2" />
    <!-- 触摸模式下单击时的背景图片-->
    <item android:state_focused="false" android:state_pressed="true"
       android:drawable="@drawable/pic3" />
    <!--选中时的图片背景-->
    <item android:state_selected="true" android:drawable="@drawable/pic4" />
    <!--获得焦点时的图片背景-->
    <item android:state_focused="true" android:drawable="@drawable/pic5" />
</selector>

2. Use the above configuration file:
The first method is to configure it in the listview configuration file, the code is as follows: android:listSelector="@drawable/item_bg"
The second method It is to add attributes to the item in the listview. The code is as follows: android:background="@drawable/item_bg"
The third method is to set it in the java code. The code is as follows: Drawable drawable =getResources().getDrawable(R. drawable.item_bg);
ListView.setSelector(drawable);
The display effect of the above setting method is sometimes black, so you need to add the following code to the configuration file: android:cacheColorHint="@android:color/ transparent" makes its background transparent.
Similarly, Button also has some background effects. The following is an attribute explanation:
android:state_selected is to set the effect when selected.
android:state_focused is to set the effect of getting focus.
android:state_pressed is to set the effect of clicking. Effect
android:state_enabled is to set whether to respond to events
The following is a selector used to set the text state in the button. The code is as follows:

<?xmlversion="1.0" encoding="utf-8"?>
<selectorxmlns:android="http://schemas.android.com/apk/res/android">
    <itemandroid:state_selected="true" android:color="#FFF" />
    <itemandroid:state_focused="true" android:color="#FFF" />
    <itemandroid:state_pressed="true" android:color="#FFF" />
    <itemandroid:color="#000" />
</selector>

For more detailed explanations on the use of the Androidselector background selector, please refer to related articles. Follow PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn