package com.yelong.medicalscience.widgets;
import android.annotation.suppresslint;
import android.content.context;
import android.graphics.bitmap;
import android.graphics.bitmap.config;
import android.graphics.canvas;
import android.graphics.color;
import android.graphics.paint;
import android.graphics.paintflagsdrawfilter;
import android.graphics.porterduff;
import android.graphics.porterduffxfermode;
import android.graphics.rectf;
import android.graphics.drawable.bitmapdrawable;
import android.util.attributeset;
import android.widget.imageview;
public class shapeimageview extends imageview
public shapeimageview(context context, attributeset attrs)
public shapeimageview(context context)
public int getshape()
public void setshape(int mshape)
public int getradiusx()
public int getradiusy()
/*** 設定圓角矩形的弧度(當shape=round_tangle才有效)
* * @param mradiusx
*/public void setradius(int radiusx, int radiusy)
}/**
* 生成幾何蒙版bitmap,即建立想要的幾何形狀(圓角、圓形等)的底板,用於與原圖相交繪製
* * @param w
* @param h
* @return
*/private bitmap getshapebitmap(int width, int height, bitmap bitmapsrc, int shape)
p.setxfermode(xfermode);
canvas.drawbitmap(bitmapsrc, null, new rectf(0, 0, bmpsrcwidth, bmpsrcheight), p);// 繪製原圖並相交得出最終圓角
p.setxfermode(null);
return bmpdst;
}@suppresslint("drawallocation")
@suppresswarnings("deprecation")
@override
protected void ondraw(canvas canvas)
super.ondraw(canvas);}}
Android自己定義圓角ImageView
package com.yulongfei.imageview import android.content.context import android.content.res.typedarray import android.graphics.bitmap import android.gra...
自定義圓形Imageview
1 學習一定要善於總結,和敢於使用新的知識 2 一直使用的都是別人寫好的控制項,今天趁著國慶放假有時間,嘗試自己寫經常要用到的框架 3 知識總結 一 用於建立canvas的bitmap不能是已經存在的bitmap 二 這個自定view中遇到乙個坑就是的大小和遮罩大小不匹配是,需要我們對bitmap做...
自定義圓形 ImageView
android預設的imageview是矩形的,為了達到圓形的目的,需要自定義控制項,繼承imageview,重寫ondraw函式。最終效果 具體步驟 1.先根據控制項的短的一邊為半徑繪製乙個圓形 bitmap bitmap bitmapdrawable drawable getbitmap int...