
Trace Boxは、Androidタブレット端末をトレース台(紙を写し描きするLightBox)として使用するためのアプリです。Android Marketからも入手できます。
【実装に関わる情報】

本ソフトウェアは、オープンソースとしており、下記プロジェクトサイトからリポジトリへ辿ることができます。
http://sourceforge.jp/projects/trace-box/
開発にはAIDE(Android IDE)を使用しましたが、使用している主なAndroid APIは以下のみです。
・アクティビティをフルスクリーンにする
・アクティビティのタイトルバーを隠す
・画面の光度を取得する
・画面へ光度を反映させる
以下にソースコードを示します。
package jp.ddhost.tracebox2;
import android.app.Activity;
import android.os.Bundle;
import android.view.*;
public class Tracebox2Activity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); //フルスクリーンモードへ
requestWindowFeature(Window.FEATURE_NO_TITLE); //タイトルバーを表示しない
setContentView(R.layout.main); //画面はmain.xmlを使う
}
private float systemBrightness; //画面のバックライト光度を一時的に保存する。
//このアプリをフォアグラウンドにしたとき
@Override
protected void onResume(){
super.onResume();
WindowManager.LayoutParams lp = getWindow().getAttributes(); //画面のアトリビュートを取得
systemBrightness = lp.screenBrightness; //画面の光度をsystemBrightnessへ保存
lp.screenBrightness = 1.0f; //画面明度を最大へ
getWindow().setAttributes(lp); //最大明度を画面へ反映
}
//このアプリが終了またはバックグラウンドへ移されたとき
@Override
protected void onPause() {
super.onPause();
WindowManager.LayoutParams lp = getWindow().getAttributes(); //画面のアトリビュートを取得
lp.screenBrightness = systemBrightness; //明度をsystemBrightnessへ
getWindow().setAttributes(lp); //明度をもとの明度へ戻す
}
}
|