Package Com.zcp.map;import android.os.bundle;import android.app.activity;import android.view.Menu; Public class Mainactivity extends Activity { private imgview img; @Override protectedvoid onCreate (Bundle savedinstancestate) { Super.oncreate (savedinstancestate); Setcontentview (r.layout.activity_main); IMG=(Imgview) Findviewbyid (r.id.img); Img.setimageresource (r.drawable.x); }}
<relativelayout xmlns:android="http://schemas.android.com/apk/res/android"Xmlns:tools="Http://schemas.android.com/tools"Android:layout_width="match_parent"Android:layout_height="match_parent"Tools:context=". Mainactivity"> <Com.zcp.map.ImgView Android:id="@+id/img"Android:layout_width="200DP"Android:layout_height="200DP"Android:layout_centerhorizontal="true"android:layout_centervertical="true"Android:scaletype="Fitxy"/></relativelayout>
Package Com.zcp.map;import Android.content.context;import android.graphics.canvas;import Android.graphics.Path ; import Android.graphics.rectf;import android.util.attributeset;import android.widget.ImageView; Public classImgview extends ImageView { PublicImgview (Context context, AttributeSet Attrs) {Super (context, attrs); } @Overrideprotected voidOnDraw (canvas canvas) {Path Clippath=NewPath (); intW = This. getwidth (); inth = This. GetHeight (); Clippath.addroundrect (NewRECTF (0,0, W, h),200.0f,200.0f, Path.Direction.CW); Canvas.clippath (Clippath); Super.ondraw (canvas); }}
Custom ImageView, circular chart