2014-02-11 2 views
0

나는 내 애플 리케이션에 원을 그리려면이 방법을 사용하고 있습니다 :안드로이드에서 원을 그리는 방법?

public void drawCircle(){  
    paint.setColor(Color.rgb(52, 73, 94)); 
    paint.setFlags(Paint.ANTI_ALIAS_FLAG);  
    canvas.drawCircle(100, 200, 60, paint);  
} 

문제는 원 타원형의 및 픽셀 화 가장자리 종류를 표시한다는 것입니다.
ANTI_ALIAS_FLAG을 사용했지만 작동하지 않았습니다.
가장자리가 둥근 원을 그리는 방법은 무엇입니까?

EDIT 게임용 프레임 워크를 사용하고 있습니다. 이 책에서 : http://www.amazon.com/Beginning-Android-Games-Mario-Zechner/dp/1430246774

+0

원이 타원형으로 변하면 캔버스가 크기가 조정되거나 어딘가에 늘어져있을 수 있습니까? 게시 한 계수입니다. – Jave

+0

전체 내용을 올리기 – Piyush

답변

0

공식 안드로이드 documentation

행운을 체크 아웃 사용자 정의보기를 그리기에 더 나은 참고로이

@Override 
    public void onDraw(Canvas canvas){ 
    super.onDraw(canvas); 

    canvas.drawCircle(x, y, radius, paint); 

} 

을보십시오!

+0

나는 활동에서 이걸하지 않을거야. onDraw를 재정의 할 수 없습니다. – Roland

+1

@Roland 사용자 정의보기를 만들지 않았습니까? – Piyush

+0

게임용 프레임 워크를 사용하고 있습니다. 이 책의 내용 : http://www.amazon.com/Beginning-Android-Games-Mario-Zechner/dp/1430246774 – Roland

0
@Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(new MyView(this)); 
    } 

    public class MyView extends View { 
     public MyView(Context context) { 
       super(context); 
       // TODO Auto-generated constructor stub 
     } 

     @Override 
     protected void onDraw(Canvas canvas) { 
      // TODO Auto-generated method stub 
      super.onDraw(canvas); 
      int x = getWidth(); 
      int y = getHeight(); 
      int radius; 
      radius = 100; 
      Paint paint = new Paint(); 
      paint.setStyle(Paint.Style.FILL); 
      paint.setColor(Color.WHITE); 
      canvas.drawPaint(paint); 
      // Use Color.parseColor to define HTML colors 
      paint.setColor(Color.parseColor("#CD5C5C")); 
      canvas.drawCircle(x/2, y/2, radius, paint); 
     } 
    } 
+0

나는 활동에서 이것을하지 않을 것이다. onDraw를 재정의 할 수 없습니다. – Roland

관련 문제