안드로이드

안드로이드 액티비티를 다이얼로그로 띄우기 android make activity to dialog

알통몬_ 2017. 6. 2. 11:57
반응형


안녕하세요 알통몬입니다.

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!

포스팅 내용이 찾아주신 분들께 도움이 되길 바라며

더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^

 


이번 포스팅에서는 액티비티를 다이얼로그로 띄우는 방법에 대해 포스팅하겠습니다.


방법은 굉장히 간단합니다!


먼저 간단하게 액티비티와 레이아웃을 구성해주시구요.


1. Activity

 

public class ActivityToDialog extends Activity {

    private static final int VIEW = R.layout.activity_to_dialog;

    TextView okTv, canTv, titleTv, contentTv;

    String sResult;

    SharedPreferences autoLogin;

    String email, restId;

    PublicMethod pm;

    @Override

    protected void onCreate(@Nullable Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        requestWindowFeature(Window.FEATURE_NO_TITLE);

         // 다이얼로그로 동작하기 때문에 저는 title을 없애줬습니다.

        setContentView(VIEW);

    }




2. layout

 

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:orientation="vertical"

    android:layout_width="320dp"

    android:layout_height="160dp">

    <TextView

        android:id="@+id/atdTitleTv"

        android:layout_width="match_parent"

        android:layout_height="40dp"

        android:text="출근"

        android:textColor="@color/colorAccent"

        android:paddingStart="16dp"

        android:paddingEnd="0dp"

        android:gravity="start|center_horizontal|center_vertical"/>

    <TextView

        android:id="@+id/atdContentTv"

        android:layout_width="match_parent"

        android:layout_height="72dp"

        android:text="출근하시겠습니까?"

        android:textColor="@color/colorAccent"

        android:paddingStart="24dp"

        android:paddingEnd="0dp"

        android:gravity="start|center_horizontal|center_vertical"

        android:textSize="20sp"/>

    <LinearLayout

        android:layout_width="match_parent"

        android:layout_height="48dp"

        android:orientation="horizontal">

        <View

            android:layout_width="0dp"

            android:layout_height="match_parent"

            android:layout_weight="6"/>

        <TextView

            android:id="@+id/atdCanTv"

            android:gravity="center"

            android:textColor="@color/colorAccent"

            android:layout_weight="2"

            android:layout_width="0dp"

            android:layout_height="match_parent"

            android:text="@string/cancel"

            />

        <TextView

            android:id="@+id/atdOkTv"

            android:gravity="center"

            android:textColor="@color/colorAccent"

            android:layout_weight="2"

            android:layout_width="0dp"

            android:layout_height="match_parent"

            android:text="@string/ok"

            />

    </LinearLayout>

</LinearLayout>



액티비티와 레이아웃을 간단하게 짜보았습니다.


그리고 매니패스트.xml 에도 설정을 해주어야하는데요.

<activity android:name=".dialog.ActivityToDialog"
android:theme="@android:style/Theme.Holo.Light.Dialog"/>

다이얼로그로 동작해야하기 때문에


android:theme="@android:style/Theme.Holo.Light.Dialog"

설정을 추가해줍니다 ㅎㅎ


그럼 실행화면입니다.

저는 위처럼 다이얼로그를 만들어봤습니다.

대부분 액티비티를 다이얼로그로 동작하는 경우는

앱이 켜져있지 않은 상태에서 무언가를 띄워주기 위해서겠지요?

저는 위에 보이는 위젯에서 출근 또는 퇴근을 눌렀을 때 위처럼 다이얼로그가 보이게

할려고 액티비티를 다이얼로그로 동작시켜봤습니다 ^&^


앱 위젯에 대한 포스팅도 조만간 올리도록하겠습니다.


아 호출방법은 기존에 액티비티 호출하는 방법과 동일합니다 !!


이상입니다!






반응형