android小记之自定义ImageView
16lz
2021-01-26
最近,BOSS拍板了,要做个拍照以后的图片FTP上传功能。
BOSS发话了,就可以动手呗。
按照用HTML结合CSS的话,有点审美的,就可以制作漂亮的相框了。
但我突然发现android的ImageView的属性太不给力了,别说漂亮的相框,连加个边框都难。
还好,android具有灵活多变的编码风格,可以自定义ImageView。为了简洁,下面的例子只是在ImageView上加了个边框而已,望启到抛砖引玉的效果。
首先,重写ImageView。
package org.xxx.picUpload.util;import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.graphics.Rect;import android.util.AttributeSet;import android.widget.ImageView;public class MyImageView extends ImageView {public MyImageView(Context context) {super(context);// TODO Auto-generated constructor stub}public MyImageView(Context context, AttributeSet attrs,int defStyle) {super(context, attrs, defStyle);// TODO Auto-generated constructor stub}public MyImageView(Context context, AttributeSet attrs) {super(context, attrs);// TODO Auto-generated constructor stub}@Overrideprotected void onDraw(Canvas canvas) { //这里就是重写的方法了,想画什么形状自己动手// TODO Auto-generated method stubsuper.onDraw(canvas);// 画边框Rect rec = canvas.getClipBounds();rec.bottom--;rec.right--;Paint paint = new Paint();paint.setColor(Color.GRAY); //颜色paint.setStyle(Paint.Style.STROKE);paint.setStrokeWidth(5);canvas.drawRect(rec, paint);}}
然后 在xml文件中直接引用。
<org.xxx.picUpload.util.MyImageViewandroid:id="@+id/imageView" android:layout_width="400px"android:layout_height="200px"/>
有图有真相(图片预览):
哈哈。。每天一小记,开心又给力!
更多相关文章
- 令人崩溃的新浪微博 java SDK
- Android(安卓)ViewDragHelper实现窗帘效果小挂件
- Android视图控件架构分析之View、ViewGroup
- 网络获取图片的方法的重写--较简洁(如果手机缓存里面有就从缓存
- Android中的WebView的使用
- Android中使用shape定义空心圆和实心圆
- Android(安卓)淘宝购物车细节详情
- android 圆形头像的Imageview
- Android(安卓)Service和广播联合更新UI的例子