안드로이드 개발 질문/답변
(글 수 45,052)
package android.ajou.amicom;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.view.View;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.view.View;
public class One extends View{
private static final float RADIUS = 30;
private Paint backgroundPaint;
private Paint myPaint1;
private Paint backgroundPaint;
private Paint myPaint1;
private Paint myPaint2;
private Paint myPaint3;
private Paint myPaint4;
private Paint myPaint5;
private Paint myPaint6;
public One(Context context, AttributeSet attrs){
super(context, attrs);
backgroundPaint = new Paint();
backgroundPaint.setColor(Color.YELLOW);
myPaint1 = new Paint();
myPaint2 = new Paint();
myPaint3 = new Paint();
myPaint4 = new Paint();
myPaint5 = new Paint();
myPaint6 = new Paint();
}
@Override
public void onDraw(Canvas canvas){
int width = canvas.getWidth();
int height = canvas.getHeight();
canvas.drawRect(0, 0, width, height, backgroundPaint);
canvas.drawCircle(240, 100, RADIUS, myPaint1);
canvas.drawCircle(220, 120, RADIUS, myPaint2);
canvas.drawCircle(200, 140, RADIUS, myPaint3);
canvas.drawCircle(180, 160, RADIUS, myPaint4);
canvas.drawCircle(160, 180, RADIUS, myPaint5);
canvas.drawCircle(140, 200, RADIUS, myPaint6);
public void onDraw(Canvas canvas){
int width = canvas.getWidth();
int height = canvas.getHeight();
canvas.drawRect(0, 0, width, height, backgroundPaint);
canvas.drawCircle(240, 100, RADIUS, myPaint1);
canvas.drawCircle(220, 120, RADIUS, myPaint2);
canvas.drawCircle(200, 140, RADIUS, myPaint3);
canvas.drawCircle(180, 160, RADIUS, myPaint4);
canvas.drawCircle(160, 180, RADIUS, myPaint5);
canvas.drawCircle(140, 200, RADIUS, myPaint6);
invalidate();
}
}
}
}
일정한 좌표에 원을 위의 코드처럼 나열 해서 만들었는데요.
ArrayList로 더 간단하게 줄 수 도 있을까요?
아시는분은 코드간단히해서 댓글로 남겨주세용 ㅜㅜ
int[] start ={0,240,220,200,180,160,140};
int[] end = {0,100,120,140,160,180,200};
Paint[] paint = {backgroundPaint, myPaint1, myPaint2, myPaint3, myPaint4, myPaint5, myPaint6};
for (int i=0; i<start.length; i++) {
canvas.drawCircle(start[i],end[i],RADIUS,paint[i]);
}
이건 좀 그른가요? ^^;;;