前田くんの大学生活とプログラミングメモ

前田くんの大学生活とプログラミングメモ

(。・ω・)ノ゙ コンチャ♪
ここでは大学での出来事やプログラミング(JAVA, C言語, Prolog, Tclなど)についてメモを取ったり日記を書いたりしています(`・ω・´)!
Androidアプリも開発中!
趣味のこととかも自由に紡いでいきたいと思います(*´∀`*)

「人生にリハーサルはない。」



GTO(1) (少年マガジンコミックス)/講談社
¥420
Amazon.co.jp




これはぼくの好きな漫画である”GTO”の主人公”鬼塚英吉”が言った言葉です。

人生は常にぶっつけ本番。

僕も何度も本番が終わって後悔したことがありました。(まだ21年の人生ですがw)

人生は常にぶっつけ本番。

ならばそれに精一杯の自分を出すだけなんですよね。

簡単そうで難しい。

それを達成できるようになりたいです。
Amebaでブログを始めよう!
ものすごい初歩的なことですが、Androidに文字列を表示するプログラムを作成しました!
僕がAndroidoアプリ開発の際に練習用に作成したプログラムになります。

クラスはStringEXActivityクラスとStringViewクラスの二つからなっています。

・StringEXActivityクラス

package net.npaka.stringex;

import android.app.Activity;
import android.os.Bundle;
import android.view.Window;

public class StringEXActivity extends Activity {
/** Called when the activity is first created. */
public void onCreate(Bundle bundle) {
super.onCreate(bundle);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(new StringView(this));

}
}


・StringViewクラス


package net.npaka.stringex;
import android.content.Context;
import android.graphics.*;
import android.view.View;
public class StringView extends View {
public StringView(Context context) {
super(context);
setBackgroundColor(Color.BLACK);
}

protected void onDraw(Canvas canvas) {
// 描画オブジェクトの生成
Paint paint = new Paint();
paint.setAntiAlias(true);

// 文字サイズと文字色の設定
paint.setTextSize(24);
paint.setColor(Color.rgb(255, 255, 255));

// 画面サイズの取得
canvas.drawText("画面サイズ:" + getWidth() + "x" + getHeight(), 0, 60, paint);

// 文字幅の取得
canvas.drawText("文字幅:" + (int) paint.measureText("A"), 0, 60 * 2, paint);

// アセント・ディセントの取得
canvas.drawText("アセント:" + (int) paint.ascent(), 0, 60 * 3, paint);
canvas.drawText("ディセント:" + (int) paint.descent(), 0, 60 * 4, paint);

// 24ドット文字列の表示
paint.setTextSize(24);
paint.setColor(Color.rgb(0, 0, 255));
canvas.drawText("24dot", 0, 60 * 5, paint);

// 32ドット文字列の表示
paint.setTextSize(32);
paint.setColor(Color.rgb(0, 255, 0));
canvas.drawText("32dot", 0, 60 * 6, paint);

// 48ドット文字列の表示
paint.setTextSize(48);
paint.setColor(Color.rgb(255, 0, 0));
canvas.drawText("48dot", 0, 60 * 7, paint);
}

}



この二つのクラスのうちStringEXactivityクラスについてはただStringViewクラスを読み出しているだけです。

StringViewクラスではpaintメソッドcanvasメソッドを用いて文字列の描画を行っています。
コメントを細かく残してあるのでこのくらいのプログラムなら特に解説することもないよねべーっだ!


実行結果は下のようになっています。


$前田くんの大学生活とプログラミングメモ

ちなみに言うとアセントとディセントというのはフォントの上部分と下部分のことです。ちなみに言うと上下の間の部分をレディングと呼びます。

例:あいうえお
この線の部分がレディングで上をアセント、下がディセントってことですね!
アセント+ディセント+レディング=フォントの高さということになります。
ちょっとした豆知識でした笑