亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Android自定義View畫圓功能

 更新時(shí)間:2017年09月30日 09:14:56   作者:xcjean  
這篇文章主要為大家詳細(xì)介紹了Android自定義View實(shí)現(xiàn)畫圓功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了Android自定義View畫圓的具體代碼,供大家參考,具體內(nèi)容如下

引入布局

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
 xmlns:tools="http://schemas.android.com/tools" 
 android:id="@+id/activity_main" 
 android:layout_width="match_parent" 
 android:layout_height="match_parent" 
 android:paddingBottom="@dimen/activity_vertical_margin" 
 android:paddingLeft="@dimen/activity_horizontal_margin" 
 android:paddingRight="@dimen/activity_horizontal_margin" 
 android:paddingTop="@dimen/activity_vertical_margin" 
 tools:context="com.bwie.test.xuejian1508a20170928.MainActivity"> 
 
 <com.bwie.test.xuejian1508a20170928.ViView 
 android:layout_width="match_parent" 
 android:layout_height="match_parent" 
  /> 
</RelativeLayout>

自定義View的java類,繼承View

public class ViView extends View{ 
 Paint paint; 
 Context context; 
 //構(gòu)造方法 
 public ViView(Context context) { 
 super(context); 
 } 
 
 public ViView(Context context, AttributeSet attrs) { 
 super(context, attrs); 
 } 
 
 public ViView(Context context, AttributeSet attrs, int defStyleAttr) { 
 super(context, attrs, defStyleAttr); 
 } 
 
 public ViView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) { 
 super(context, attrs, defStyleAttr, defStyleRes); 
 this.context=context; 
 } 
 
 @Override 
 protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { 
 super.onMeasure(widthMeasureSpec, heightMeasureSpec); 
 } 
 
 @Override 
 protected void onLayout(boolean changed, int left, int top, int right, int bottom) { 
 super.onLayout(changed, left, top, right, bottom); 
 
 } 
 
 /*繪圖*/ 
 @Override 
 protected void onDraw(Canvas canvas) { 
 super.onDraw(canvas); 
 //得到屏幕寬高 
 int width = getWidth(); 
 int radius = width - 450/2; 
 int height = getHeight(); 
// 創(chuàng)建畫筆 
 Paint paint1 = new Paint(); 
 Paint paint2 = new Paint(); 
 Paint paint3= new Paint(); 
// 消除鋸齒 
 paint1.setAntiAlias(true); 
 paint2.setAntiAlias(true); 
 paint3.setAntiAlias(true); 
 //畫筆顏色 
 paint1.setColor(Color.RED); 
 paint2.setColor(Color.WHITE); 
 paint3.setColor(Color.BLUE); 
// 畫圓。確定位置 
// canvas.drawRect(100,100,width/2,height/2,paint1); 
// canvas.drawCircle(100,100,100,paint1); 
// canvas.drawCircle(250,250,200,paint2); 
// canvas.drawCircle(500,500,300,paint3); 
 //設(shè)置圓環(huán)形狀和大小 
 RectF oval = new RectF(width-radius,width-radius,width+radius,width+radius); 
 paint1.setStrokeWidth(450); 
 canvas.drawArc(oval,-90,90,false,paint1); 
 
 canvas.drawCircle(width/2,height/2,450,paint1); 
 canvas.drawCircle(width/2,height/2,300,paint2); 
 canvas.drawCircle(width/2,height/2,200,paint3); 
 } 
 
 @Override 
 public boolean onTouchEvent(MotionEvent event) { 
 return super.onTouchEvent(event); 
 } 
} 

效果圖:

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論