상세 컨텐츠

본문 제목

[안드로이드] 원형 다이얼로그( Dialog) 쉽게 만드는 방법

안드로이드

by aries574 2022. 2. 8. 13:42

본문


이번 시간에는 원형의 다이얼로그를

쉽게 만드는 방법을 알아보겠습니다.


목차

1. 실행 화면

2. 라이브러리 등록

3. 메인 화면 구성 activity_main.xml

4. 메인 코드 구현 MainActivity.java


1. 실행 화면



2. 라이브러리 등록

build.gradle(Module:프로젝트명:app)

dependencies 괄호 안에 아래 코드를 넣어주시면 됩니다.

implementation 'com.github.hassanusman:CircularDialogs:1.2'

 참조 문서

https://github.com/HassanUsman/CircularDialogs

 

GitHub - HassanUsman/CircularDialogs: Android dialog library to give user feedback about the common operations like Success, War

Android dialog library to give user feedback about the common operations like Success, Warning and Errors. - GitHub - HassanUsman/CircularDialogs: Android dialog library to give user feedback about...

github.com

 



3. 메인 화면 구성 activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">


    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="20dp"
        android:layout_marginTop="20dp"
        android:text="[다이얼로그 타입]"
        android:textSize="25sp"/>

    <RadioGroup
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="10dp"
        android:orientation="horizontal"
        android:id="@+id/type">

        <RadioButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:checked="true"
            android:text="Success"
            android:id="@+id/success"/>

        <RadioButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Warning"
            android:id="@+id/warning"/>

        <RadioButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Error"
            android:id="@+id/error"/>
    </RadioGroup>

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="다이얼로그"
        android:id="@+id/show_dialog"
        android:layout_gravity="center"
        android:layout_marginTop="50dp"/>
</LinearLayout>

 


4. 메인 코드 구현 MainActivity.java

 4-1 속성

  message

   - 메시지 

  type

   - 다이얼로그 타입 ( SUCCESS, WARNING, ERROR )

  size

   - 다이얼로그 크기 ( LARGE )

  setAnimation

   - 다이얼로그 나타나는 방향과 사라지는 방향

  setDuration

   - 다이얼로그 지속 시간 ( 1000: 1초 )

  setTextSize

   - 텍스트 크기 ( LARGE_TEXT_SIZE, NORMAL_TEXT_SIZE )

public class MainActivity extends AppCompatActivity {

    int type = CDConstants.SUCCESS;

    String message = "Success";

    int size = CDConstants.LARGE;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        RadioGroup typeRb = findViewById(R.id.type);
        typeRb.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(RadioGroup radioGroup, int checkId) {
                switch(checkId){
                    case R.id.success:
                        type = CDConstants.SUCCESS;
                        message = "Success";

                        break;
                    case R.id.warning:
                        type = CDConstants.WARNING;
                        message = "Warning";
                        break;
                    case R.id.error:
                        type = CDConstants.ERROR;
                        message = "Error";
                        break;
                }
            }
        });

        Button showDialogBtn = findViewById(R.id.show_dialog);
        showDialogBtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                showCircularDialog(type, size, message);
            }
        });
    }


    /**
     * 다이얼로그 보여주기
     * @param type 타입( Success, Warning, Error )
     * @param size ( Large
     * @param message 메시지
     */
    public void showCircularDialog(int type, int size, String message){

        new CDialog(this).createAlert(message,
                type,
                size)
                .setAnimation(CDConstants.SCALE_FROM_BOTTOM_TO_TOP)
                .setDuration(2000)
                .setTextSize(CDConstants.LARGE_TEXT_SIZE)
                .show();
    }
} //MainActivity

2022.02.07 - [안드로이드] - [안드로이드] 상태 진행 표시줄 쉽게 만드는 방법

 

[안드로이드] 상태 진행 표시줄 쉽게 만드는 방법

이번 시간에는 현재 상태 진행상황을 알 수 있게 표시하는 방법을 알아보겠습니다. 목차 1. 실행 화면 2. 라이브러리 등록 3. 메인 화면 구성 activity_main.xml 4. 메인 코드 구현 MainActivity.jav.

aries574.tistory.com

2022.02.06 - [안드로이드] - [안드로이드] 카드뷰(CardView) 접었다 폈다 쉽게 하는 방법

 

[안드로이드] 카드뷰(CardView) 접었다 폈다 쉽게 하는 방법

이번 시간에는 카드뷰 접었다 폈다 쉽게 하는 방법에 대하여 알아보겠습니다. 목차 1. 실행 화면 2. 라이브러리 등록 3. 확장 화면 추가 4. 메인 화면 구성 activity_main.xml 5. 메인 코드 구현 MainA

aries574.tistory.com

2022.02.05 - [안드로이드] - [안드로이드] 레이아웃(Layout) 접었다 폈다 쉽게 하는 방법

 

[안드로이드] 레이아웃(Layout) 접었다 폈다 쉽게 하는 방법

이번 시간에는 애니메이션 효과를 통해 레이아웃을 접었다 폈다 하는 방법을 알아보겠습니다. 목차 1. 실행 화면 2. 라이브러리 등록 3. 메인 화면 구성 activity_main.xml 4. 메인 코드 구현 Ma

aries574.tistory.com

 

반응형

관련글 더보기

댓글 영역