반응형
Notice
Recent Posts
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- Kotlin
- Dva
- ActivityResult-API
- JNI
- Firebase
- Galaxy Watch
- socket-server
- Flavors
- mosquitto
- hung-up
- Java8
- cloud-firestore
- firebase-database
- firebase-storage
- Android
- socket-client
- ozd
- google-login
- BottomSheetDialog
- git
- mqtt
- socket.io
- git-push
- OZViewer
- TIZEN
- 오즈뷰어
- AWS
- NoSuchMethodError
- gradle
- 워치
Archives
- Today
- Total
Hyeyeon blog
[Android] Progress Dialog 만들기 본문
반응형
1. ProgressDialog 클래스에 적용할 Layout 생성
layout/progressdialog.xml 을 생성합니다.
<?xml version="1.0" encoding="utf-8"?>
<ProgressBar xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_gravity="center"
android:alpha="0.5">
</ProgressBar>
2. ProgressDialog 클래스 생성
Dialog를 상속받는 ProgressDialog 클래스를 생성합니다.
class ProgressDialog(context: Context) : Dialog(context) {
init {
requestWindowFeature(Window.FEATURE_NO_TITLE)
setContentView(R.layout.progressdialog)
setCancelable(false)
window?.setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT))
window?.clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND) // dialog의 dim 처리 배경 제거
}
}
3. ProgressDialog 표시/숨김 동작
ProgressDialog 객체를 생성하고 show()와 dismiss()를 호출하여 컨트롤합니다.
val progressDialog = ProgressDialog(this)
progressDialog.show()
..
if(progressDialog.isShowing) {
progressDialog.dismiss()
}
4. 결과
show() 호출 시 아래와 같이 표시됩니다
728x90
'개발 > Android' 카테고리의 다른 글
[Android] 갤러리에서 사진 가져오기 - ActivityResultLauncher, Intent (0) | 2022.03.02 |
---|---|
[Android] Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8 해결 방법 (0) | 2021.12.07 |
[Android] Firebase Database - Cloud Firestore 연동하기 (0) | 2021.06.08 |
[Android] Firebase Google Login 연동하기 (0) | 2021.05.12 |
[Android] 갤러리 사진을 Firebase-Storage에 업로드하기 (0) | 2021.05.07 |
Comments