Android 自定義 ImageView

openkk 13年前發布 | 52K 次閱讀 Android Android開發 移動開發

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);
}

}</pre>然后 在xml文件中直接引用。

       <org.xxx.picUpload.util.MyImageView
                android:id="@+id/imageView"    
                android:layout_width="400px"
                android:layout_height="200px"/>
有圖有真相(圖片預覽):

Android 自定義 ImageView

轉自:http://blog.csdn.net/baolong47/article/details/7301160

 本文由用戶 openkk 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!