Friday, May 17, 2019

Android에서 Dialog 생성하기: AppCompatActivity와 Dialog Theme의 효율적 활용

Android에서 Dialog 생성하기: AppCompatActivity와 Dialog Theme의 효율적 활용

Android 개발에서 dialog를 생성하면서 activity 간의 데이터 전달이나 다른 복잡한 과정에 직면했던 적이 있나요? 이런 문제들을 해결하는 간단하고 효율적인 방법을 소개합니다. 바로, manifests 파일에 정의된 activity의 theme를 dialog theme로 변경하는 것입니다.

dialog theme 예시
Dialog Theme 예시

주의사항: AppCompat과 호환성

다만, app theme가 AppCompat을 사용 중일 경우, AppCompat 하위의 Dialog 테마만 지정 가능하다는 점을 유념해야 합니다.

Customizing Your Dialogs

더 나아가, 해당 dialog를 커스텀 하고 싶다면 res/values 하위의 styles.xml에서 추가 테마를 지정할 수도 있습니다.

custom dialog 예시
Custom Dialog 예시

최종 단계: Activity에 Theme 적용하기

Theme.AppCompat.Dialog를 상속받은 dialog theme를 만든 후 위에서 정리한 대로 activity에 해당 테마를 지정하면 됩니다.
이제 다이얼로그를 띄울 때 그냥 해당 startActivity 함수 호출만으로 가능합니다.
데이터 교환 역시 기존처럼 startActivityForResult 함수 활용하여 쉽게 할 수 있습니다.
기존 activity처럼 모든 기능과 화면, 데이터 통신 등을 다양하게 활용하면서 UI는 dialog처럼 보여 줄 수 있어 매우 편리합니다.


0 개의 댓글:

Post a Comment