Notice
Recent Posts
Recent Comments
Link
투케이2K
110. (TWOK/UTIL) [Android/kotlin] C_Ui_View - 팝업창 표시 , UI 뷰 관련 표시 수행 본문
투케이2K 유틸파일
110. (TWOK/UTIL) [Android/kotlin] C_Ui_View - 팝업창 표시 , UI 뷰 관련 표시 수행
투케이2K 2022. 12. 13. 23:01[설 명]
프로그램 : Android / Kotlin
설 명 : C_Ui_View - 팝업창 표시 , UI 뷰 관련 표시 수행
[소스 코드]
package com.example.kotlinproject
import android.app.AlertDialog
import android.content.Context
import android.content.DialogInterface
import android.os.Handler
import android.os.Looper
import android.util.Log
class C_Ui_View {
/**
* // -----------------------------------------
* TODO [클래스 설명]
* // -----------------------------------------
* 1. 팝업창 표시 , UI 뷰 관련 표시 수행
* // -----------------------------------------
* */
// TODO [빠른 로직 찾기 : 주석 로직 찾기]
/**
* // -----------------------------------------
* // [SEARCH FAST] : [Alert 팝업창 호출 처리 메소드]
* // -----------------------------------------
*/
// TODO [companion object >> static 선언 실시]
companion object {
// TODO [SEARCH FAST] : [Alert 팝업창 호출 처리 메소드]
fun showAlert(mContext: Context, setType: Int, header: String, content: String, ok: String, no:String) {
/**
* // -----------------------------------------
* [showAlert 메소드 설명]
* // -----------------------------------------
* 1. Alert 팝업창 호출 처리 메소드
* // -----------------------------------------
* */
// -----------------------------------------
//*
Log.i("---","---" + "\n")
Log.d("//===========//","================================================")
Log.i("","\n"+"[C_Ui_View >> showAlert() :: Alert 팝업창 호출 실시]")
Log.i("","\n"+"[type :: "+ setType.toString() +"]")
Log.i("","\n"+"[header :: "+ header +"]")
Log.i("","\n"+"[content :: "+ content +"]")
Log.d("//===========//","================================================")
Log.i("---","---" + "\n")
// */
// -----------------------------------------
/** [사용 방법 정의] */
/*
// [팝업창 호출 실시]
C_Ui_View.showAlert(
this@A_Intro,
1, // [와이파이 설정창 이동 코드]
"알림",
"현재 연결된 네트워크가 없습니다. \n 설정에서 다시 확인해주세요.",
"설정",
"취소");
// */
// -----------------------------------------
/** [파라미터 관련 설명] */
// 1. setType : 설정창 이동 여부 타입
// - [0 = 없음 / 1 = 와이파이 설정창 / 2 = 블루투스 설정창 / 3 = 위치 권한 설정창]
// - [4 = NFC 설정창 / 5 = 애플리케이션 설정창]
// 2. header : 팝업창 타이틀
// 3. content : 팝업창 내용
// 4. ok : 확인 버튼
// 5. no : 취소 버튼
// -----------------------------------------
// [로직 처리 실시]
try {
// [타이틀 및 내용 표시]
val Title = header
val Message = content
// [버튼 이름 정의]
val buttonYes = ok
val buttonNo = no
// [AlertDialog 팝업창 생성]
Handler(Looper.getMainLooper()).postDelayed({ // TODO [핸들러 루퍼 사용 : UI 스레드]
AlertDialog.Builder(mContext)
.setTitle(Title) //[팝업창 타이틀 지정]
//.setIcon(R.drawable.app_icon) //[팝업창 아이콘 지정]
.setMessage(Message) //[팝업창 내용 지정]
.setCancelable(false) //[외부 레이아웃 클릭시도 팝업창이 사라지지않게 설정]
.setPositiveButton(buttonYes, DialogInterface.OnClickListener { dialog, which ->
// TODO Auto-generated method stub
// -----------------------------------------
// TODO [확인 버튼 클릭 이벤트 처리]
if (setType == 0) {
// [일반 알림 표시]
}
if (setType == 1) {
// C_Intent.goWifiIntent(mContext) // [와이파이 설정창 이동]
}
// -----------------------------------------
if (setType == 2) {
// C_Intent.goBleSettingsIntent(mContext) // [블루투스 설정창 이동]
}
// -----------------------------------------
if (setType == 3) {
// C_Intent.goGpsSettingsIntent(mContext) // [위치 설정창 이동]
}
// -----------------------------------------
if (setType == 4) {
// C_Intent.goNfcIntent(mContext) // [NFC 설정창 이동]
}
// -----------------------------------------
if (setType == 5) {
// C_Intent.goAppInfoIntent(mContext) // [애플리케이션 설정창 이동]
}
// -----------------------------------------
})
.setNegativeButton(buttonNo, DialogInterface.OnClickListener { dialog, which ->
// TODO Auto-generated method stub
})
.show()
},0)
}
catch (e: Exception) {
e.printStackTrace()
}
// -----------------------------------------
}
} // [companion 종료]
} // TODO [클래스 종료]
반응형
'투케이2K 유틸파일' 카테고리의 다른 글
Comments