zoukankan      html  css  js  c++  java
  • Android之最简单的ImageView加边框方法

    通常情况下,如果我们要给ImageView加上边框,比如宽为3dp的灰色框,是自己定义一个MyImageView类,继承自ImageView,在其onDraw方法中画canvas。

    还有设置一个带有边框的背景图片的方法。
     
    这里给出一种简单方法,既不需要创建衍生的类,也不需要准备图片。采用xml定义的方式实现。
    背景定义xml: bg_border.xml
    <?xml version="1.0" encoding="UTF-8"?>     
    <shape xmlns:android="http://schemas.android.com/apk/res/android">     
      <solid android:color="#EEEEEE" />    www.2cto.com 
      <stroke android:width="3dp" android:color="#EEEEEE" />     
      <corners android:radius="0dp" />     
      <padding android:left="0dp" android:top="0dp"      
        android:right="0dp" android:bottom="0dp" />     
    </shape>   
     
    在Imageview定义页面上使用代码:
    <ImageView android:id="@+id/iv_thumbnail"     
               android:layout_height="63dp"      
               android:layout_width="63dp"     
               android:background="@drawable/bg_border"     
               android:padding="3dp"     
            />    
     
     
    第二种
    <?xml version="1.0" encoding="utf-8"?>
    <shape
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="rectangle">
        <!-- 设置边框的大小和颜色 -->
        <stroke 
            android:width="1dp" 
            android:color="@color/black"/>
        <!-- 设置图形内的颜色,此处为透明色 -->
        <solid android:color="@android:color/transparent"/>
        <!-- 定义圆角弧度 圆的话就是半径 -->
        <corners android:radius="0dp"/>
        
        <!-- 
        
        <corners
            android:bottomLeftRadius="0dp"
            android:bottomRightRadius="0dp"
            android:topLeftRadius="0dp"
            android:topRightRadius="0dp" />
        
         -->
    
        <padding android:left="0dp" android:top="0dp" android:right="0dp" android:bottom="0dp"/>
    </shape>
    <shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="rectangle" >
     
        <!-- 设置边框的大小和颜色 -->
        <stroke
            android:width="3.5dip"
            android:color="@color/white" />
     
        <!-- 设置图形内的颜色,此处为透明色 -->
        <solid android:color="@android:color/transparent" />
     
        <!-- 定义圆角弧度 圆的话就是半径 -->
        <corners
            android:bottomLeftRadius="75dp"
            android:bottomRightRadius="75dp"
            android:topLeftRadius="75dp"
            android:topRightRadius="75dp" />
     
    </shape>
  • 相关阅读:
    Web前端框架与类库的思考【转】
    mouseover事件mouseenter事件
    11_Eclipse中演示Git版本号的创建,历史版本号的改动,创建分支,合并历史版本号和当前版本号
    实现了私聊和群聊功能的聊天工具
    有预处理命令#define声明一个常数,用以表明1年中有多少秒
    解决Office软件冲突问题
    pig载入两个不同字段个数的文件?load file with different items(f1有42列,f2有43列读到一个对象中)
    游戏公司通用屏蔽字列表
    Android统计图表MPAndroidChart
    HTTP状态码解析
  • 原文地址:https://www.cnblogs.com/exmyth/p/4450170.html
Copyright © 2011-2022 走看看