android圆角View实现及不同版本这间的兼容(android3.0过后的版本)

http://blog.csdn.net/lovecluo/article/details/8710174

在做我们自己的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

时间: 2024-10-03 15:23:09

android圆角View实现及不同版本这间的兼容(android3.0过后的版本)的相关文章

Android 实现个性的ViewPager切换动画 实战PageTransformer(兼容Android3.0以下)

1.介绍如何使用setPageTransformer设置切换动画: 2.自定义PageTransformer实现个性的切换动画: 3.该方法在SDK11以下的版本不起作用,我们会对其做一定修改,让其向下兼容. 官方示例地址:http://developer.android.com/training/animation/screen-slide.html 有兴趣的可以去看看~~ 好了,下面开始编写代码~~ 2.setPageTransformer的使用 首先我们迅速的实现一个传统的ViewPage

android圆角View实现及不同版本这间的兼容

在做我们自己的APP的时候,为了让APP看起来更加的好看,我们就需要将我们的自己的View做成圆角的,毕竟主流也是将很多东西做成圆角,和苹果的外观看起来差不多,看起来也还不错. 要将一个View做成圆角的也很容易,只需要建立一个自定义的Drawable就可以了. 我们在res/drawable下面建立一个shape的drawable,代码如下: <?xml version="1.0" encoding="utf-8"?> <shape xmlns:

Android 圆角View设置 圆角边框

圆角的Veiw   XML <shape xmlns:android="http://schemas.android.com/apk/res/android"> <solid android:color="@color/gray_white" /> 背景颜色 <corners android:radius="5dp" /> 圆角大小 </shape> 随意定义某个角是圆角加边框 <shape

解决android3.0版本以上应用接收不到开机广播问题

现在是2014-07-16 下午15:27. 好久没写过东西,突然间灵感喷发想写点东西(其实是刚刚弄好了一个棘手的问题,自豪中..呵呵呵呵 我牛掰).废话不多说,进入正题. 不知道你们又没有碰到这问题,本身做的一个应用,能够监听开机广播的.但很奇怪,在android3.0以下的版本 你怎么跑都没问题.但是在android3.0以上的版本就恐怕情况不一样了.你会发现往往很多时候接收不到开机广播.这是为什么呢?嘿 不告诉你! 说笑的 其实这方面百度很多人给出为什么了.我在这就不多废话了,今天我们要说

Android 设置View 圆角

虽然很简单,但还是记录一下.不一到此一游 在drawable文件下 创建一个布局文件corners_bg.xml <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <solid android:color="#000000" />

Android圆角图片和圆形图片实现总结

1. 概述 Android研发中经常会遇见圆角或者圆形图片的展示,但是系统中ImageView并不能直接支持,需要我们自己做一些处理,来实现圆角图片或者圆形图片,自己最近对这块的实现做了一下总结,看一下几种实现方法. 图层叠加,上层覆盖一层蒙版,遮挡图片,让图片展示出圆角或者圆形效果 重新绘制 BitmapShader Xfermode RoundedBitmapDrawable CardView,使用官方控件,自动裁剪,达到圆角或者圆形效果.(5.0以上系统) 第一种方法,很傻,不太优雅,不推

Android 中View的绘制机制源码分析 一

尊重原创: http://blog.csdn.net/yuanzeyao/article/details/46765113 差不多半年没有写博客了,一是因为工作比较忙,二是觉得没有什么内容值得写,三是因为自己越来越懒了吧,不过最近我对Android中View的绘制机制有了一些新的认识,所以想记录下来并分享给大家.在之后的几篇博客中,我会给大家分享如下的内容: 1.View中measure(),layout(),draw()函数执行过程分析,带领大家详细分析View的尺寸测量过程,位置计算,并最终

(转)[原] Android 自定义View 密码框 例子

遵从准则 暴露您view中所有影响可见外观的属性或者行为. 通过XML添加和设置样式 通过元素的属性来控制其外观和行为,支持和重要事件交流的事件监听器 详细步骤见:Android 自定义View步骤 样子 支持的样式 可以通过XML定义影响外边和行为的属性如下 边框圆角值,边框颜色,分割线颜色,边框宽度,密码长度,密码大小,密码颜色 <declare-styleable name="PasswordInputView"> <attr name="border

源码解析Android中View的measure量算过程

Android中的Veiw从内存中到呈现在UI界面上需要依次经历三个阶段:量算 -> 布局 -> 绘图,关于View的量算.布局.绘图的总体机制可参见博文< Android中View的布局及绘图机制>.量算是布局和绘图的基础,所以量算是很重要的一个环节.本文将从源码角度解析View的量算过程,这其中会涉及某些关键类以及关键方法. 对View进行量算的目的是让View的父控件知道View想要多大的尺寸. 量算过程概述 如果要进行量算的View是ViewGroup类型,那么ViewGr