Androidアプリ開発メモ(2)

タイトルバーとステータスバーの非表示 (AndroidManifest.xmlで)

AndroidManifest.xmlに下記の属性を記述する。
・タイトルバー非表示

android:theme="@android:style/Theme.NoTitleBar"

・タイトルバーとステータスバー非表示

android:theme="@android:style/Theme.NoTitleBar.Fullscreen"

タイトルバーとステータスバーの非表示 (コードで)

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // ステータスバー非表示
        getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
        // タイトルバー非表示
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.activity_main);
    }

背景画像の設定

(1) 背景画像ファイルを用意
/res/drawable-???/ に画像ファイルを置く。ここでは bg.png とする。
-??? は、解像度ごとに -hdpi とか -xhdpi とか。

(2) レイアウトXML内で背景画像を指定

 <LinearLayout
    ...
  android:background="@drawable/bg"
  >
    ...
 </LinearLayout>

横画面固定/縦画面固定

AndroidManifest.xml の に下記の属性を記述。
横画面に固定

<activity android:screenOrientation="landscape">

縦画面に固定

<activity android:screenOrientation="portrait">

画像ファイルの描画

/res/drawable-???/ に画像ファイルを置く。
-??? は、解像度ごとに -hdpi とか -xhdpi とか。
ここでは、独自ViewクラスHoge にpiyo.pingを描画する例を挙げる。

public class Hoge extends View {

  public Screen(Context context) {
    super(context);
  }
  
  @Override
  protected void onDraw(Canvas c) {
    super.onDraw(c);
    Paint p = new Paint();
    Bitmap img;
    Resources res = this.getContext().getResources();
    img = BitmapFactory.decodeResource(res, R.drawable.back);
    c.drawBitmap(img,0,0,p);
  }
}

円の描画

  Paint paint = new Paint();
  // 色指定
  paint.setColor(Color.BLUE);          // 名前での色指定
  paint.setColor(Color.rgb(12,18,39)); // RGBでの色指定
  // スタイル指定
  paint.setStyle(Paint.Style.STROKE);  // 線で描く
  paint.setStyle(Paint.Style.FILL);    // 塗りつぶす
  paint.setStyle(Paint.Style.FILL_AND_STROKE); // 線で描き塗りつぶす
  // 線の幅
  paint.setStrokeWidth(5);
  // アンチエイリアス設定
  paint.setAntiAlias(true);
  // 円を描く
  canvas.drawCircle(x, y, r, paint);

Bluetoothの使用許可

AndroidManifest.xml に下記の属性を記述。

    <uses-permission android:name="android.permission.BLUETOOTH" />
    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />