android圆角View实现及不同版本这间的兼容
在做我们自己的APP的时候,为了让APP看起来更加的好看,我们就需要将我们的自己的View做成圆角的,毕竟主流也是将很多东西做成圆角,和苹果的外观看起来差不多,看起来也还不错。
要将一个View做成圆角的也很容易,只需要建立一个自定义的Drawable就可以了。
我们在res/drawable下面建立一个shape的drawable,代码如下:
- <?xml version="1.0" encoding="utf-8"?>
- <shape xmlns:android="http://schemas.android.com/apk/res/android" >
- <corners
- android:topLeftRadius="5dp"
- android:topRightRadius="5dp"
- android:bottomLeftRadius="5dp"
- android:bottomRightRadius="5dp"/>
- <stroke
- android:width="1dp"
- android:color="#FF5500"
- />
- </shape>
在这个里面,corners是指的圆角,stroke 是指的边框颜色,有关shape的相关信息可以看官方文档,或者在网上搜搜,有讲的非常详细的博客。
本来没有问题的,可是我后面在做那个只有左边有圆角和只有右边有圆角的时候,出现了一个问题,那就是在android3.0以前,android:bottomLeftRadius与android:bottomRightRadius是
相反的,也就是说,我本来只是设置左边,却成了一个对角显示了,由于本人又没有学好,但是在网上找了好久没有找到解决办法,后面知道了android加载
布局文件的方法后,就知道了这个的解决办法,特在此记录一下,就是在我们的res下建立一个叫drawable-v12的文件目录,这个文件目录是
android3.0过后的版本访问的位置,所以只需要在这个里面放置正确的布局文件就可以了。
代码如下 :
在android3.0以下要写成这样(左边全是圆角):
- <?xml version="1.0" encoding="utf-8"?>
- <shape xmlns:android="http://schemas.android.com/apk/res/android" >
- <corners
- android:topLeftRadius="5dp"
- android:bottomRightRadius="5dp"/>
- <stroke
- android:width="1dp"
- android:color="#FF5500"
- />
- </shape>
而在android3.0以上的版本中,google为我们解决了这个问题,所以我们只需要按照正常情况的写,并把文件放在res/drawable-v12下就行了,如下:
- <?xml version="1.0" encoding="utf-8"?>
- <shape xmlns:android="http://schemas.android.com/apk/res/android" >
- <corners
- android:topLeftRadius="5dp"
- android:bottomLeftRadius="5dp"/>
- <stroke
- android:width="1dp"
- android:color="#FF5500"
- />
- </shape>
在右边的和上面的解决办法一致,在此就不赘述了。
我的源码地址:http://download.csdn.net/detail/lovecluo/5173334
android圆角View实现及不同版本这间的兼容的更多相关文章
- android圆角View实现及不同版本这间的兼容(android3.0过后的版本)
http://blog.csdn.net/lovecluo/article/details/8710174 在做我们自己的APP的时候,为了让APP看起来更加的好看,我们就需要将我们的自己的View做 ...
- android圆角View实现及不同版本号这间的兼容
在做我们自己的APP的时候.为了让APP看起来更加的好看,我们就须要将我们的自己的View做成圆角的,毕竟主流也是将非常多东西做成圆角.和苹果的外观看起来差点儿相同,看起来也还不错. 要将一个View ...
- shape不同版本这间的兼容
在做那个只有左边上面是圆角和只有右边下边是圆角的时候,出现了一个问题,那就是在android3.0以前,android:bottomLeftRadius与android:bottomRightRadi ...
- Android 建立View 圆角
虽然很easy,不过还是录制. 混合参观 在drawable文件下 创建一个布局文件corners_bg.xml <?xml version="1.0" encoding=& ...
- Android圆角布局、天气应用、树状图、日食动画、仿饿了么导航效果等源码
Android精选源码 Android通用圆角布局源码 Android天气应用源码,界面美观 一个支持定制的树状 Android 自定义View PIN 码专用输入控件,支持任意长度和输入任意数据 A ...
- (转)[原] Android 自定义View 密码框 例子
遵从准则 暴露您view中所有影响可见外观的属性或者行为. 通过XML添加和设置样式 通过元素的属性来控制其外观和行为,支持和重要事件交流的事件监听器 详细步骤见:Android 自定义View步骤 ...
- Android 自定义View (五)——实践
前言: 前面已经介绍了<Android 自定义 view(四)-- onMeasure 方法理解>,那么这次我们就来小实践下吧 任务: 公司现有两个任务需要我完成 (1)监测液化天然气液压 ...
- Android 自定义 view(三)—— onDraw 方法理解
前言: 上一篇已经介绍了用自己定义的属性怎么简单定义一个view<Android 自定义view(二) -- attr 使用>,那么接下来我们继续深究自定义view,下一步将要去简单理解自 ...
- [原] Android 自定义View步骤
例子如下:Android 自定义View 密码框 例子 1 良好的自定义View 易用,标准,开放. 一个设计良好的自定义view和其他设计良好的类很像.封装了某个具有易用性接口的功能组合,这些功能能 ...
随机推荐
- oc 怎么接收NSSting字符的方法
]; //使用一个缓冲区 NSLog(@"请输入一个字符串:"); scanf("%s",buffer); NSString * str = [NSString ...
- 《Python 二三事》——python学习必看(转载)
面向初学者介绍Python相关的一些工具,以及可能遇到的常见问题. 原文出处 原文作者:八八年出生的男性,互联网上常用id是 jagttt .目前正从事 IT 行业的工作.业余爱好是动漫游加电 ...
- mysql 语句资料总结
一.UNION命令 UNION 操作符用于合并两个或多个 SELECT 语句的结果集. 请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列.列也必须拥有相似的数据类型.同时,每条 SE ...
- 原生Ajax + Promise
有原生写的ajax + promise嫁接下 ;(function(root){ var LD = function(obj){ if( obj instanceof LD ) return obj; ...
- SQL语句 常用条件判断
条件判断写法: 对每天记录执行操作时,判断所限制的条件-----> 操作符: = <>(不匹配检查) != &l ...
- MySql数据库3【优化4】连接设置的优化
1.wait_timeout / interactive_timeout 连接超时 服务器关闭连接之前等待活动的秒数.MySQL所支持的最大连接数是有限的,因为每个连接的建立都会消耗内存,因此我们希 ...
- Mysql Explain 详解
Mysql Explain 详解[强烈推荐] Mysql Explain 详解一.语法explain < table_name >例如: explain select * from t3 ...
- protocol(协议) 和 delegate(委托)也叫(代理)---辨析
protocol和delegate完全不是一回事. 协议(protocol),(名词)要求.就是使用了这个协议后就要按照这个协议来办事,协议要求实现的方法就一定要实现. 委托(delegate),(动 ...
- Unity NGUI制作scroll view
unity版本:4.5 NGUI版本:3.6.5 参考链接:http://blog.csdn.net/monzart7an/article/details/23878505,作者:CSDN 冬菊子 ...
- IMAP与POP3的区别
POP3协议允许电子邮件客户端下载服务器上的邮件,但是在客户端的操作(如移动邮件.标记已读等),不会反馈到服务器上.比如通过客户端收取了邮箱中的2封邮件并移动到其他文件夹,邮箱服务器上的这些邮件是没有 ...