Computer >> 컴퓨터 >  >> 프로그래밍 >> Android

안드로이드(Android)에서 다이얼로그를 전체 화면으로 표시하는 방법

안드로이드에서 다이얼로그를 전체 화면으로 표시하는 방법

이 튜토리얼에서는 안드로이드 앱에서 다이얼로그(Dialog)를 전체 화면으로 표시하는 방법을 단계별로 살펴봅니다. 기본 다이얼로그는 화면의 일부만 차지하지만, 시스템 테마 스타일을 활용하면 별도의 복잡한 설정 없이도 손쉽게 전체 화면 크기로 확장할 수 있습니다.

1단계 — 새 프로젝트 생성

Android Studio를 실행한 후 File ⇒ New Project 메뉴로 이동하고, 새 프로젝트 생성에 필요한 모든 정보를 입력하여 프로젝트를 만듭니다.

2단계 — activity_main.xml 레이아웃 작성

res/layout/activity_main.xml 파일에 아래 코드를 추가합니다. 버튼과 텍스트뷰가 포함된 간단한 상대 레이아웃(RelativeLayout)입니다.

<?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 파일에 아래 코드를 추가합니다. 특별한 권한 선언 없이 기본 구성 그대로 사용하면 됩니다.

<?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 Studio에서 앱을 실행하려면 프로젝트의 액티비티 파일 중 하나를 연 뒤, 툴바에 있는 Run 안드로이드(Android)에서 다이얼로그를 전체 화면으로 표시하는 방법 아이콘을 클릭합니다. 목록에서 사용 중인 모바일 기기를 선택하면, 기기에 아래와 같은 기본 화면이 표시됩니다.

안드로이드(Android)에서 다이얼로그를 전체 화면으로 표시하는 방법

화면의 Click here 버튼을 누르면 Theme_Black_NoTitleBar_Fullscreen 테마가 적용된 다이얼로그가 제목 표시줄 없이 전체 화면으로 나타나는 것을 확인할 수 있습니다. 이처럼 시스템 테마를 활용하면 몇 줄의 코드만으로 전체 화면 다이얼로그를 간편하게 구현할 수 있습니다.