lmw
2025-04-24 718f31c92e2029d05260810435a2c70cef6e6ce5
app/src/main/java/com/sinata/xqmuse/dialog/ReportDialog.kt
@@ -1,64 +1,35 @@
package com.sinata.xqmuse.dialog
import android.os.Bundle
import android.view.Gravity
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.core.os.bundleOf
import androidx.fragment.app.DialogFragment
import android.widget.RadioButton
import androidx.fragment.app.FragmentManager
import cn.sinata.xldutils.utils.myToast
import cn.sinata.xldutils.utils.screenWidth
import cn.sinata.xldutils.utils.showAllowingStateLoss
import com.sinata.xqmuse.R
import com.sinata.xqmuse.utils.interfaces.StringCallback
import kotlinx.android.synthetic.main.dialog_report.*
import org.jetbrains.anko.wrapContent
import org.jetbrains.anko.support.v4.find
class ReportDialog: DialogFragment() {
    override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? =
            inflater.inflate(R.layout.dialog_report,container,false)
class ReportDialog: BaseDialogFragment() {
    override fun setContentView() = R.layout.dialog_report
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setStyle(STYLE_NO_FRAME, R.style.FadeDialog)
    }
    override fun setGravity() = Gravity.BOTTOM
    override fun onActivityCreated(savedInstanceState: Bundle?) {
        super.onActivityCreated(savedInstanceState)
        dialog?.window?.setLayout((screenWidth()*0.85).toInt(), wrapContent)
        dialog?.window?.setGravity(Gravity.CENTER)
        dialog?.setCanceledOnTouchOutside(false)
    }
    override fun heightMatch() = true
    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
        super.onViewCreated(view, savedInstanceState)
        tv_cancel.setOnClickListener {
            dismiss()
        }
    override fun initView() {
        tv_action.setOnClickListener {
            val content = et_content.text.toString()
            if (content.isEmpty())
                myToast("请输入内容")
            else{
                callback?.onResult(content)
                dismiss()
            }
            val content = find<RadioButton>(rg_time.checkedRadioButtonId).text.toString()
            callback?.onResult(content)
            dismissAllowingStateLoss()
        }
        bg.setOnClickListener { dismissAllowingStateLoss() }
    }
    var callback:StringCallback? = null
    companion object{
        const val TYPE_REPORT = 1
        const val TYPE_COMMENT = 2
        const val TYPE_REPLY = 3
        fun show(fragmentManager: FragmentManager,callback: StringCallback){
            val riskDialog = ReportDialog()
            riskDialog.callback = callback