selector是在文件夹drawable中进行定义的xml文件转载 https://www.cnblogs.com/fx2008/p/3157040.html
获取Drawable对象:
Resources res = mContext.getResources();
Drawable myImage = res.getDrawable(R.drawable.my_image);
selector是在文件夹drawable中进行定义的xml文件。
它主要定义控件在下pressed,selected,focused及平常状态下的属性。
定义背景图片
bg_selector.xml文件
<?xml version="1.0" encoding="utf-8" ?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_pressed="true"
android:drawable="@drawable/listlayoutsample12xml_press_image" />
<item
android:state_selected="true"
android:drawable="@drawable/listlayoutsample12xml_focus_image" />
<item
android:state_focused="true"
android:drawable="@drawable/listlayoutsample12xml_focus_image" />
<item
android:drawable="@drawable/listlayoutsample12xml_bg_image" />
</selector>
在布局文件中使用它
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:orientation="vertical"
android:background="@drawable/bg_selector"
android:paddingRight="13.33dp"
android:layout_height="65.33dp"
android:paddingLeft="31.9dp"
android:gravity="center_vertical">
</LinearLayout>
示例2:
<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:color="@touchwiz:color/tw_color001" />
<item android:state_selected="true" android:color="@touchwiz:color/tw_color001" />
<item android:state_focused="true" android:color="@touchwiz:color/tw_color001"/>
<item android:color="@touchwiz:color/tw_color003"/>
</selector>

实现起来非常简单。
第一步,创建一个背景配置文件float_box.xml,放到res/drawable下,如下所示(如看不懂可查看本站:):
- <?xml version="1.0" encoding="utf-8"?>
- <!--
- ** Copyright 2010, Ideasandroid
- -->
- <shape xmlns:android="http://schemas.android.com/apk/res/android">
- <solid android:color="#ffffff" />
- <stroke android:width="3dp" color="#000000" />
- <corners android:radius="3dp" />
- <padding android:left="10dp" android:top="10dp" android:right="10dp"
- android:bottom="10dp" />
- </shape>
第二步,定义一个对话框样式,放到res/values/styles.xml,如下所示:
- <?xml version="1.0" encoding="utf-8"?>
- <!-- Copyright (C) 2010 IdeasAndroid
- -->
- <resources>
- <!-- 定义一个样式,继承android系统的对话框样式 android:style/Theme.Dialog-->
- <style name="Theme.FloatActivity" parent="android:style/Theme.Dialog">
- <!-- float_box为我们定义的窗口背景-->
- <item name="android:windowBackground">@drawable/float_box</item>
- </style>
- </resources>
第三步,创建一个视图配置文件res/layout/float_activity.xml,一个ImageView和一个TextView,如下所示:
- <?xml version="1.0" encoding="utf-8"?>
- <!-- Copyright (C) 2010 IdeasAndroid
- -->
- <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent">
- <ImageView
- android:id="@+id/ideasandroidlogo"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_alignParentTop="true"
- android:src="@drawable/ideasandroid"
- />
- <TextView android:layout_width="wrap_content" android:text="@string/ideasandroidIntr"
- android:layout_height="wrap_content"
- android:layout_below="@id/ideasandroidlogo"
- android:textColor="@android:color/black"
- />
- </RelativeLayout>
第四步创建我们的Activity,如下所示:
- public class FloatActivityDemo extends Activity {
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- //先去除应用程序标题栏 注意:一定要在setContentView之前
- requestWindowFeature(Window.FEATURE_NO_TITLE);
- //将我们定义的窗口设置为默认视图
- setContentView(R.layout.float_activity);
- }
- }
最后一步,更改应用程序配置文件AndroidManifest.xml,将我们刚才创建的样式应用到我们的Activity上,如下所示:
- <activity android:name=".FloatActivityDemo" android:theme="@style/Theme.FloatActivity">
- <intent-filter>
- <action android:name="android.intent.action.MAIN" />
- <category android:name="android.intent.category.LAUNCHER" />
- </intent-filter>
- </activity>
selector是在文件夹drawable中进行定义的xml文件转载 https://www.cnblogs.com/fx2008/p/3157040.html的更多相关文章
- selector是在文件夹drawable中进行定义的xml文件。
获取Drawable对象: Resources res = mContext.getResources(); Drawable myImage = res.getDrawable(R.drawable ...
- Http协议中get和post的区别 转载https://www.cnblogs.com/lexiaofei/p/http.html
get(默认值)是通过URL传递表单值,数据追加在action属性后面. post传递的表单值是隐藏到http报文体中,url中看不到. get是通过url传递表单值,post通过url看不到表单域的 ...
- win7文件夹图标中多了一把小锁打不开文件夹怎么办?
win7文件夹图标中多了一把小锁打不开文件夹怎么办?解决办法一:右击目录→取得管理员权限!该方法适用于win7旗舰版.解决办法二:右击目录→属性→安全→高级→选择everyone→更改权限→勾上完全访 ...
- MFC中打开选择文件夹对话框,并将选中的文件夹地址显示在编辑框中
一般用于选择你要将文件保存到那个目录下,此程序还包含新建文件夹功能 BROWSEINFO bi; ZeroMemory(&bi, sizeof(BROWSEINFO)); //指定存放文件的 ...
- JFinal中文件上传后会默认放置到WebContent的upload包下,但是tomcat会自动重启,当我们再次打开upload文件夹查看我们刚刚上传的文件时,发现上传的文件已经没有了。
JFinal中文件上传后会默认放置到WebContent的upload包下,但是tomcat会自动重启,当我们再次打开upload文件夹查看我们刚刚上传的文件时,发现上传的文件已经没有了.因为tomc ...
- matlab从文件夹名中获得该文件夹下所图像文件名
function [s,nameC]=get_FileNameFromFolderPath(path) % 函数调用:[s,nameC]=get_FileNameFromFolderPath(path ...
- java基础 File 递归删除文件夹中所有文件文件夹 目录(包含子目录)下的.java文件复制到e:/abc文件夹中, 并统计java文件的个数
File 递归删除文件夹中所有文件文件夹 package com.swift.kuozhan; import java.io.File; import java.util.Scanner; /*键盘录 ...
- Python-统计目录(文件夹)中Excel文件个数和数据量
背景:前一阵子在帮客户做Excel文件中的数据处理,但是每周提交周报,领导都需要统计从客户接收的文件数量以及记录数.所以我就简单写了统计的脚本,方便统计目录(文件夹)中的Excel文件个数和数据量. ...
- META-INF文件夹是干啥的,META-INF文件夹的作用, META-INF文件夹能删吗
今天有人问到 META-INF文件夹是干啥的,META-INF文件夹的作用, META-INF文件夹能删吗,还有项目的META-INF下面一般会有个MANIFEST.MF 文件,都是干啥的. 百度搜了 ...
随机推荐
- leetcode-159周赛-5230-缀点成线
自己的提交: class Solution: def checkStraightLine(self, coordinates: List[List[int]]) -> bool: if not ...
- php fopen用法以及解释
$log = fopen('./log.txt','a');//生成一个log.txt文件,a相当于文件的权限 fwrite($log,'成功'."\r\n");//写入文件 mo ...
- 微信小程序布局篇
刚刚接触小程序,小程序与HTML5有一定的差别,小程序就几个标签,而HTML5一大堆标签,还不断更新,但是新增标签功能强大.做一下微信小程序的布局练练手.感觉还是挺不错的,也封装了很多东西功能出来,与 ...
- 获取ThinkPHP
获取ThinkPHP的方式很多,官方网站(http://thinkphp.cn)是最好的下载和文档获取来源. 官网提供了稳定版本的下载:http://thinkphp.cn/down/framewor ...
- JavaScript中的节流和防抖
节流: 在规定时间内,多次触发事件,但是只执行一次 场景:输入框搜索,地图渲染 优化用户体验 /** * 节流 规定时间内不管触发多少次只执行一次 * @param {Function} fn 实际要 ...
- bzoj1059题解
[解题思路] 因为只要验证可行性,所以考虑行和考虑列是等价的,故我们只考虑行的交换操作. 这样,拆一波点,把每一行拆成两个点,左边为原交换行,右边为目标交换行,原问题等价于能否对这个二分图进行完全匹配 ...
- bzoj1022题解
[题意分析] 最简单的Anti-Nim博弈模型. [解题思路] 引理:SJ定理 对于一个Anti-Nim游戏,只要有以下两条条件之一,先手必胜: 1.游戏的总SG函数为0且任意子游戏的SG函数不超过1 ...
- python round, ceil, flooor
round(num, n) 保留n位小数 round(80.23456, 2) : 80.23 round(100.000056, 3) : 100.0 round(-100.000056, 3) : ...
- Python 爬虫-抓取小说《鬼吹灯之精绝古城》
想看小说<鬼吹灯之精绝古城>,可是网页版的好多广告,还要一页一页的翻,还无法复制,于是写了个小爬虫,保存到word里慢慢看. 代码如下: """ 爬取< ...
- 分布式存储glusterfs
什么是glusterfs? Glusterfs是一个开源分布式文件系统,具有强大的横向扩展能力,可支持数PB存储容量的数干客户端,通过网络互联成一个并行的网络文件系统.具有可扩展性.高性能.高可用性等 ...