package com.dayu.general.view
|
|
import android.app.Dialog
|
import android.content.Context
|
import android.os.Bundle
|
import android.view.Gravity
|
import android.view.ViewGroup
|
import android.widget.RadioGroup
|
import android.widget.TextView
|
import com.dayu.baselibrary.view.ConfirmDialog
|
import com.dayu.general.R
|
import com.dayu.general.bean.db.ProjectDataBean
|
import com.dayu.general.dao.BaseDaoSingleton
|
import com.dayu.general.tool.BaseCommon
|
|
/**
|
* Description:
|
* Author: zuo
|
* Date: 2025/3/17
|
*/
|
class ProjectDialog(context: Context):Dialog(context,com.dayu.baselibrary.R.style.ws_pay_showSelfDialog){
|
|
var confirmDialog: ConfirmDialog? = null
|
var mLibraryBack: LibraryBack? = null
|
var isChose: Boolean = false
|
var projectDataDao = BaseDaoSingleton.getInstance(context)?.projectDataDao()
|
var projectBean: ProjectDataBean = ProjectDataBean()
|
var type: Int = 0
|
var data: String = ""
|
override fun onCreate(savedInstanceState: Bundle?) {
|
super.onCreate(savedInstanceState)
|
initView()
|
}
|
|
private fun initView() {
|
window?.setGravity(Gravity.CENTER)
|
setContentView(R.layout.project_dialog)
|
setCanceledOnTouchOutside(false)
|
setCancelable(false)
|
val radioGroup = findViewById<RadioGroup>(R.id.radioLibrary)
|
if (projectDataDao != null) {
|
projectBean = projectDataDao?.findFirst() ?: ProjectDataBean()
|
|
radioGroup.setOnCheckedChangeListener { _, checkedId ->
|
isChose = true
|
// 当选中的RadioButton发生变化时调用
|
when (checkedId) {
|
R.id.yuanMouLibrary -> {
|
type = BaseCommon.YuanMo
|
projectBean.projectType = type
|
data = "确认选择河南版本吗?"
|
}
|
R.id.qiHeLibrary -> {
|
type = BaseCommon.QiHe
|
projectBean.projectType = type
|
data = "确认选择齐河单机版本吗?"
|
}
|
|
}
|
}
|
|
val okBtn = findViewById<TextView>(R.id.ok)
|
okBtn.setOnClickListener {
|
if (isChose) {
|
// 二次确认
|
confirmDialog = ConfirmDialog(context, data) {
|
projectDataDao?.insert(projectBean)
|
mLibraryBack?.listener(type)
|
dismiss()
|
confirmDialog?.dismiss()
|
}
|
confirmDialog?.show()
|
}
|
}
|
}
|
}
|
interface LibraryBack {
|
fun listener(type: Int)
|
}
|
override fun show() {
|
super.show()
|
/**
|
* 设置宽度全屏,要设置在show的后面
|
*/
|
val layoutParams = window?.attributes
|
layoutParams?.gravity = Gravity.CENTER
|
layoutParams?.width = ViewGroup.LayoutParams.MATCH_PARENT
|
layoutParams?.height = ViewGroup.LayoutParams.MATCH_PARENT
|
window?.decorView?.setPadding(0, 0, 0, 0)
|
window?.attributes = layoutParams
|
}
|
}
|