Android
 Computer >> コンピューター >  >> プログラミング >> Android

【Android】ダイアログを全画面表示に設定する方法をわかりやすく解説

この記事では、Androidアプリでダイアログを全画面表示に設定する方法を、実際のコード例とともにステップ形式で解説します。

全体の流れ

今回作成するのは、ボタンをタップすると全画面ダイアログが表示されるシンプルなアプリです。手順は以下の4ステップです。

  1. Android Studioで新規プロジェクトを作成
  2. レイアウトファイル(activity_main.xml)の作成
  3. MainActivity.javaへの処理の追加
  4. AndroidManifest.xmlの確認・設定

ステップ1:新規プロジェクトを作成する

まず、Android Studioで新しいプロジェクトを作成します。メニューから「File」→「New Project」を選択し、必要な項目(プロジェクト名、保存先、言語など)を入力してプロジェクトを作成してください。

ステップ2:activity_main.xml にコードを追加する

次に、res/layout/activity_main.xml に以下のコードを記述します。中央にテキストを配置し、上部に「Click here」ボタンを設置したシンプルなレイアウトです。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="https://schemas.android.com/apk/res/android"
    xmlns:tools="https://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">
<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="40dp"
    android:onClick="ClickHere"
    android:text="Click here" />
<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerInParent="true"
    android:text="Hello World" />
</RelativeLayout>

ステップ3:MainActivity.java にコードを追加する

続いて、src/MainActivity.java に以下のコードを追加します。ポイントは、Dialogインスタンス生成時にテーマとして android.R.style.Theme_Black_NoTitleBar_Fullscreen を指定している点です。これにより、タイトルバーなしの全画面ダイアログになります。

import androidx.appcompat.app.AppCompatActivity;
import android.app.Dialog;
import android.os.Bundle;
import android.view.View;
public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
    public void ClickHere(View view) {
        Dialog dialog = new Dialog(this, android.R.style.Theme_Black_NoTitleBar_Fullscreen);
        dialog.setContentView(R.layout.activity_main);
        dialog.show();
    }
}

ステップ4:AndroidManifest.xml を確認する

最後に、androidManifest.xml が以下のようになっていることを確認してください。特別な権限は不要ですが、MainActivityがランチャーアクティビティとして登録されている必要があります。

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="https://schemas.android.com/apk/res/android"
    package="app.com.sample">
    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
</manifest>

アプリを実行して動作を確認する

それでは、アプリケーションを実行してみましょう。ここでは、実機のAndroidスマートフォンがパソコンに接続されているものとします。

Android Studioからアプリを起動するには、プロジェクト内のアクティビティファイルを開き、ツールバーにある実行(Run)アイコンをクリックします。デバイス選択画面で接続中のスマートフォンを選択すると、端末側にアプリの初期画面が表示されます。

画面上の「Click here」ボタンをタップすると、タイトルバーのない全画面ダイアログが立ち上がり、同じレイアウトが全画面で表示されることが確認できます。

まとめ

Androidでダイアログを全画面表示にするには、Dialogのコンストラクタ第2引数に Theme_Black_NoTitleBar_Fullscreen テーマを指定するのが最も簡単な方法です。カスタムテーマを作成すれば、背景色やアニメーションなども自由に制御できるので、用途に応じて使い分けてみてください。

  1. Windows 10 PCにAndroidの画面をキャストする方法|ワイヤレスディスプレイ設定ガイド

    スクリーンキャストは、Windows 10のAnniversary Updateで追加された注目機能の一つです。別名「ワイヤレスディスプレイ」とも呼ばれ、Androidスマートフォンの画面をWindows 10パソコンへワイヤレスで投影できます。 動画制作やYouTuberの方にとっては、スマホの操作画面を大きな画面に映しながら録画や解説ができるため、非常に便利な機能です。ただし、Windows 10側とAndroid側の両方で必要な設定が多く、初めて行う人には少し難しく感じられるかもしれません。 そこで本記事では、Windows 10 PCとAndroidスマホをワイヤレス接続して画面をキャ

  2. Excelでタイトルバーなしの全画面表示にする3つの簡単な方法

    大量のデータを扱っていると、Excelをタイトルバーなしの全画面表示にしたい場面があります。Microsoft Excelでは、この操作を簡単かつ効率的に行うことができます。本記事では、Excelをタイトルバーなしで全画面表示にする方法を詳しく解説します。この記事を読めば、画面表示に関する実用的な知識がきっと身につくはずです。 Excelでタイトルバーなしの全画面表示にする3つの方法 Excelをタイトルバーなしで全画面表示にするには、以下の3つの方法が有効です。いずれも比較的簡単に実行できます。1つ目はVBAコードを使用する方法、残りの2つはExcel標準のコマンドや設定を使った方法です。そ