반응형
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 | 29 | 30 | 31 |
Tags
- socket-client
- google-login
- JNI
- Galaxy Watch
- Java8
- socket.io
- AWS
- Firebase
- OZViewer
- Dva
- firebase-storage
- NoSuchMethodError
- Android
- Flavors
- cloud-firestore
- Kotlin
- gradle
- ozd
- TIZEN
- 워치
- mqtt
- firebase-database
- BottomSheetDialog
- git-push
- ActivityResult-API
- mosquitto
- socket-server
- hung-up
- 오즈뷰어
- git
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