<DrawAndroid.java>

1: package com.android.drawandroid;
2:
3: import android.app.Activity;
4: import android.os.Bundle;
5: import android.view.Window;
6: import android.view.WindowManager;
7:
8: public class DrawAndroid extends Activity {
9:
10: private DrawAndroidView drawAndroidView = null;
11:
12: @Override
13: public void onCreate(Bundle savedInstanceState) {
14: super.onCreate(savedInstanceState);
15:
16: // 移除應用程式的標題
17: requestWindowFeature(Window.FEATURE_NO_TITLE);
18:
19: // 設定視窗屬性為全螢幕
20: getWindow().setFlags( WindowManager.LayoutParams.FLAG_FULLSCREEN,
21: WindowManager.LayoutParams.FLAG_FULLSCREEN);
22:
23: drawAndroidView = new DrawAndroidView(this);
24:
25: setContentView(drawAndroidView);
26: }
27: }

 

<DrawAndroidView.java>

 

自訂字體下載點: DroidLogo-Bold.ttf



1: package com.android.drawandroid;
2:
3: import android.content.CoNtext;
4: import android.graphics.Canvas;
5: import android.graphics.Color;
6: import android.graphics.Paint;
7: import android.graphics.RectF;
8: import android.graphics.Typeface;
9: import android.view.View;
10:
11: public class DrawAndroidView extends View {
12:
13: Typeface font;
14: Paint paint, paint_eye;
15:
16: public DrawAndroidView(CoNtext coNtext) {
17: super(coNtext);
18: }
19:
20: public void onDraw(Canvas canvas) {
21: super.onDraw(canvas);
22: DrawCircle(canvas);
23: DrawRect(canvas);
24: DrawLine(canvas);
25: DrawText(canvas);
26: }
27:
28: private void DrawCircle(Canvas canvas) {
29: // 畫頭
30: paint = new Paint();
31: // 設置為true可消除邊緣效果
32: paint.setAntiAlias(true);
33: // 設定畫筆顏色
34: paint.setColor(Color.GREEN);




35: // 于畫布上繪製【頭部】
36: RectF rectF = new RectF(70,40,250,180);
37: canvas.drawArc(rectF, 180, 180, true, paint);
38:
39: // 畫眼睛
40: paint_eye = new Paint();
41: // 設置為true可消除邊緣效果
42: paint_eye.setAntiAlias(true);
43: // 設定畫筆顏色
44: paint_eye.setColor(Color.WHITE);
45: // 于畫布上繪製【眼腈】
46: canvas.drawCircle(120, 77, 8, paint_eye);
47: canvas.drawCircle(200, 77, 8, paint_eye);
48: }
49:
50: private void DrawRect(Canvas canvas) {
51: paint = new Paint();
52: // 設置為true可消除邊緣效果
53: paint.setAntiAlias(true);
54: // 設定畫筆顏色
55: paint.setColor(Color.GREEN);
56: // 設置矩形區域
57: RectF rectF1 = new RectF(20,105,60,280); // 左手
58: RectF rectF2 = new RectF(260,105,300,280); // 右手
59: RectF rectF3 = new RectF(70,120,250,350); // 身體
60: RectF rectF4 = new RectF(100,320,140,430); // 左腳
61: RectF rectF5 = new RectF(180,320,220,430); // 右腳
62: // 于畫布上繪製圓角矩形
63: canvas.drawRoundRect(rectF1, 20, 20, paint);
64: canvas.drawRoundRect(rectF2, 20, 20, paint);
65: canvas.drawRoundRect(rectF3, 20, 20, paint);
66: canvas.drawRoundRect(rectF4, 20, 20, paint);
67: canvas.drawRoundRect(rectF5, 20, 20, paint);
68: }
69:
70:
71: private void DrawLine(Canvas canvas) {
72: paint = new Paint();
73: // 設置為true可消除邊緣效果
74: paint.setAntiAlias(true);
75: // 設定畫筆顏色
76: paint.setColor(Color.GREEN);
77: // 設定畫筆的粗細
78: paint.setStrokeWidth(12);
79: // 于畫布上繪製【頭頂兩支角】
80: canvas.drawLine(70,28,100,63, paint);
81: canvas.drawLine(215,63,250,28, paint);
82: }
83:
84: private void DrawText(Canvas canvas) {
85: paint = new Paint();
86: // 讀取自訂字體
87: font = Typeface.createFromAsset(getCoNtext().getAssets(),"fonts/DroidLogo-Bold.ttf");
88: // 設定字體
89: paint.setTypeface(font);
90: // 設置為true可消除邊緣效果
91: paint.setAntiAlias(true);
92: // 設定畫筆顏色
93: paint.setColor(Color.WHITE);
94: // 設定字體大小
95: paint.setTextSize(30);
96: // 于畫布上繪製【ANDROID 文字】
97: canvas.drawText("ANDROID", 85, 230, paint);
98: }
99: }
arrow
arrow
    全站熱搜

    戮克 發表在 痞客邦 留言(0) 人氣()