android小记之自定义ImageView

 最近,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
	}
	
	@Override
	protected void onDraw(Canvas canvas) {   //这里就是重写的方法了,想画什么形状自己动手
		// TODO Auto-generated method stub
		super.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.MyImageView
				android:id="@+id/imageView"    
				android:layout_width="400px"
				android:layout_height="200px"/>


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

android小记之自定义ImageView_第1张图片

 

 

 

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

你可能感兴趣的:(html,xml,android,layout,Class,Constructor)