android 实现图片的边框
16lz
2021-01-26
方案一:继承ImageView,在onDraw 重写画图函数,在图片边延画条灰色的线
方案二:在灰色背景下,内缩2个像索,再内嵌个图片。
view plain- packagecom.xmz.activity;
- importandroid.content.Context;
- importandroid.graphics.Canvas;
- importandroid.graphics.Color;
- importandroid.graphics.Paint;
- importandroid.graphics.Rect;
- importandroid.util.AttributeSet;
- importandroid.widget.ImageView;
- publicclassImageViewBorderextendsImageView{
- privateStringnamespace="http://xmz.com";
- privateintcolor;
- publicImageViewBorder(Contextcontext,AttributeSetattrs){
- super(context,attrs);
- color=Color.parseColor(attrs.getAttributeValue(namespace,"BorderColor"));
- }
- @Override
- protectedvoidonDraw(Canvascanvas){
- super.onDraw(canvas);
- //画边框暂时去除小边框
- Rectrec=canvas.getClipBounds();
- rec.bottom--;
- rec.right--;
- Paintpaint=newPaint();
- paint.setColor(color);
- paint.setStyle(Paint.Style.STROKE);
- canvas.drawRect(rec,paint);
- }
- }
- <?xmlversion="1.0"encoding="utf-8"?>
- <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:xmz="http://xmz.com"
- android:orientation="vertical"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- >
- <TextView
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:text="方案一:"
- />
- <com.xmz.activity.ImageViewBorder
- android:layout_width="124px"
- android:layout_height="180px"
- android:background="@drawable/movie"
- xmz:BorderColor="GRAY"
- />
- <TextView
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:text="方案二:"
- />
- <LinearLayout
- android:layout_width="124px"
- android:layout_height="180px"
- android:background="@drawable/image_bg"
- android:padding="2px">
- <ImageView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:background="@drawable/movie"
- />
- </LinearLayout>
- </LinearLayout>
工程的资源下载:http://download.csdn.net/source/3386837
更多相关文章
- unbuntu 14.04下NDK环境的搭建以及无法设置NDK路径的解决方案
- Android(安卓)View分区域点击实现方案——1.根据坐标范围
- Android(安卓)Studio中mergeDebugResources时报“png-cruncher_*
- android webview增强版,对原生webview的一些解决方案
- 在android上实施不会OOM的内存管理方案
- 简述Android(安卓)解决65536/64K方法数限制方案
- Android渠道包测试方案
- Android(安卓)6.0 悬浮窗默认关闭解决方案
- 在小米手机上,修改APP的launcher应用图标不生效的解决方案