android小记之自定义ImageView

来源:互联网 发布:js json 取值 编辑:程序博客网 时间:2024/04/28 03:19

 最近,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"/>


有图有真相(图片预览):

 

 

 

哈哈。。每天一小记,开心又给力!

原创粉丝点击