프로그래밍

안드로이드 스튜디오 그래픽 2

안드로이드 스튜디오
반응형

도형 그리기 (mainActivity)

package com.example.draw;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.os.Bundle;
import android.view.View;

class CustomView extends View{
    private Paint paint = new Paint();

    public CustomView(Context context) {
        super(context);
        setBackgroundColor(Color.rgb(203,171,200));
    }
    @Override
    protected void onDraw(Canvas canvas) {
        paint.setColor(Color.WHITE);
        paint.setStrokeWidth(20);
        canvas.drawLine(100,100,700,100,paint);
        canvas.drawRect(100,300,700,700,paint);
        canvas.drawCircle(300,1200,200,paint);
        paint.setTextSize(80);
        canvas.drawText("this is test",100,900,paint);
    }
}
public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        CustomView customview = new CustomView(this);
        setContentView(customview);
    }
}

 

도형 그리기 (class추가)

package com.example.draw_red_rect;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.view.View;

public class customview extends View {
    Paint paint = new Paint();
    public customview(Context context) {
        super(context);
        paint.setColor(Color.rgb(123,45,79));
    }

    @Override
    protected void onDraw(Canvas canvas) {
        super.onDraw(canvas);
        canvas.drawRect(100,200,300,400,paint);
    }
}
package com.example.draw_red_rect;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        customview customView = new customview(this);
        setContentView(customView);
    }
}

Graphic Font

package com.example.graphicfont;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Typeface;
import android.os.Bundle;
import android.view.View;

public class MainActivity extends AppCompatActivity {

    class CustomView extends View {
        public CustomView(Context context) {
            super(context);
            setBackgroundColor(Color.RED);
        }
        @Override
        protected void onDraw(Canvas canvas) {
            Paint paint = new Paint();
            paint.setAntiAlias(true);
            paint.setTextSize(100);
            Typeface t;

            t = Typeface.create(Typeface.DEFAULT, Typeface.NORMAL);
            paint.setTypeface(t);
            paint.setTextAlign(Paint.Align.LEFT);
            canvas.drawText("DEFAULT 폰트", 10, 400, paint);

            t = Typeface.create(Typeface.DEFAULT_BOLD, Typeface.NORMAL);
            paint.setTypeface(t);
            paint.setTextAlign(Paint.Align.CENTER);
            canvas.drawText("DEFAULT_BOLD 폰트", 500, 600, paint);

            t = Typeface.create(Typeface.MONOSPACE, Typeface.NORMAL);
            paint.setTypeface(t);
            paint.setTextAlign(Paint.Align.RIGHT);
            canvas.drawText("MONOSPACE 폰트", 900, 800, paint);

            t = Typeface.create(Typeface.SERIF, Typeface.NORMAL);
            paint.setUnderlineText(true);
            paint.setTypeface(t);
            paint.setTextAlign(Paint.Align.LEFT);
            canvas.drawText("SERIF 폰트", 10, 1000, paint);
            paint.setUnderlineText(false);

            t = Typeface.create(Typeface.SANS_SERIF, Typeface.NORMAL);
            paint.setStrikeThruText(true);
            paint.setTypeface(t);
            paint.setTextAlign(Paint.Align.LEFT);
            canvas.drawText("SANS_SERIF 폰트", 10, 1200, paint);
        }
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        CustomView customView = new CustomView(this);
        setContentView(customView);
    }
}

반응형