package com.dayu.baselibrary.view; import android.app.Activity; import android.app.Dialog; import android.content.Intent; import android.view.Gravity; import android.view.View; import android.view.ViewGroup; import android.view.WindowManager; import android.widget.RadioGroup; import android.widget.TextView; import com.dayu.baselibrary.R; import com.dayu.baselibrary.dao.BaseDaoSingleton; import com.dayu.baselibrary.dao.LibraryDao; import com.dayu.baselibrary.dbbean.LibraryBean; /** * author: zuo * Date: 2024-04-26 * Time: 16:18 * 备注:选择模块 */ public class LibraryDialog extends Dialog { Intent intent; Activity mContext; LibraryBean libraryBean; LibraryDao libraryDao; boolean ischose = false; libraryBack mLibraryBack; int type; public LibraryDialog(Activity context, libraryBack libraryBack) { super(context, com.dayu.baselibrary.R.style.ws_pay_showSelfDialog); this.intent = intent; mContext = context; mLibraryBack = libraryBack; initView(); } private void initView() { getWindow().setGravity(Gravity.CENTER); setContentView(R.layout.library_dialog); setCanceledOnTouchOutside(false); RadioGroup radioGroup = findViewById(R.id.radioLibrary); libraryDao = BaseDaoSingleton.getInstance(mContext).libraryDao(); libraryBean = libraryDao.findFirst(); if (libraryBean == null) { libraryBean = new LibraryBean(); } radioGroup.setOnCheckedChangeListener((group, checkedId) -> { ischose = true; // 当选中的RadioButton发生变化时调用 if (checkedId == R.id.henanLibrary) { type = 0; libraryBean.setType(type); } else if (checkedId == R.id.qhAloneLibrary) {// 处理选中Option 2的逻辑 type = 1; libraryBean.setType(type); } }); TextView okBtn = findViewById(R.id.ok); okBtn.setOnClickListener(v -> { if (ischose) { libraryDao.insert(libraryBean); mLibraryBack.listener(type); } }); } @Override public void show() { super.show(); /** * 设置宽度全屏,要设置在show的后面 */ WindowManager.LayoutParams layoutParams = getWindow().getAttributes(); layoutParams.gravity = Gravity.CENTER; layoutParams.width = ViewGroup.LayoutParams.MATCH_PARENT; layoutParams.height = ViewGroup.LayoutParams.MATCH_PARENT; getWindow().getDecorView().setPadding(0, 0, 0, 0); getWindow().setAttributes(layoutParams); } public interface libraryBack { void listener(int type); } }