自定义ImageView,圆形图

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
    protected void 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 class ImgView extends ImageView {

    public ImgView(Context context, AttributeSet attrs) {
        super(context, attrs);
          
    }
    @Override
    protected void onDraw(Canvas canvas) {
        Path clipPath = new Path();
        int w = this.getWidth();
        int h = this.getHeight();
        clipPath.addRoundRect(new RectF(0, 0, w, h), 200.0f, 200.0f,
                Path.Direction.CW);
        canvas.clipPath(clipPath);
        super.onDraw(canvas);
    }


}

 

posted on 2016-05-04 10:02  小荣荣  阅读(186)  评论(0)    收藏  举报