Android 使用DialogFragment自定义Dialog、IOS风格;

AndroidX版本、DialogFragment实现;

Kotlin代码;

IOS风格弹框、自定义弹框、底部选择弹框、加载中弹框;

使用方便,一行代码使用弹框,可以高度自定义:

https://blog.csdn.net/qq_35605213/article/details/87864905 这篇讲了DialogFragment的基本使用方法;

本项目Github地址:https://github.com/CuiChenbo/CcDialog

testBtn1.setOnClickListener {AlertDialog.show(this,"通知","APP即将崩溃","MDZZ","我知道了")}
        testBtn2.setOnClickListener {AlertDialog().bulid(this).setTitle("崔崔崔")
                .setMsg("你好")
                .setBtnR("真帅",object: OnDialogButtonClickListener {
                    override fun onClick(dialog: BaseDialog, v: View) {
                       toast("帅")
                        dialog.dismiss()
                    }
                })
                .setCancelable(false)
                .show()}

        testBtn3.setOnClickListener {LoadDialog.show(this)
        testBtn3.postDelayed(Runnable {LoadDialog.dismiss()  },3000L )
        }
        testBtn4.setOnClickListener {LoadDialog().bulid(this)
                .autoDismiss(3333)
                .setMsg("嘿嘿")
                .setMsgColor(R.color.dark)
                .setProgressColor(R.color.dark)
                .setBckRes(R.drawable.rect_selectdialog_ios_bkg_light)
                .show()
        }

        testBtn5.setOnClickListener {
            BottomDialog.show(this,"挖掘机",Arrays.asList("中国","山东","找","蓝翔"),object: OnBottomItemClick {
                override fun onItemClick(dialog: BaseDialog, position: Int) {
                    toast(position)
                    dialog.dismiss()
                }
            },false)
        }

        testBtn6.setOnClickListener {
         CustomDialog.show(this,R.layout.layout_lufei,object: OnBindView {
             override fun onBind(dialog: BaseDialog?, view: View) {
                 val imageview = view.findViewById<AppCompatImageView>(R.id.iv)
                 val textview = view.findViewById<AppCompatTextView>(R.id.tv)
                 imageview.setOnClickListener{toast("快救我出来") }
                 textview.setOnClickListener{dialog!!.dismiss() }
             }
         }, false)
        }

    }

    fun toast(obj: Any) {
        Toast.makeText(baseContext, obj.toString(), Toast.LENGTH_SHORT).show()
    }

UI风格仿照Kongzue的Dialog;

如果客官你看着顺眼,墙裂推荐进入Github拷贝走cdialog类库,爱怎么改怎么改;

更新1、Fragment already added异常修复;

 if (!dialog!!.isAdded
                && !dialog!!.isVisible
                && !dialog!!.isRemoving)
        dialog!!.show(context!!.supportFragmentManager, TAG)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值