DialogX - 究竟有多少种写法?

271 阅读2分钟

显示一个对话框,究竟有多少种写法?

new InputDialog("title", "please input data...", "ok", "cancel").show();
​
MessageDialog.show("title", "this is message content", "ok");
​
BottomDialog.build()
        .setTitle("title")
        .setMessage("message")
        .setOkButton("ok")
        .show();

主打一个随心所欲😆

对话框关闭时执行,究竟有多少种写法?

TipDialog.show(R.string.error_network, WaitDialog.TYPE.WARNING).onDismiss(new DialogXRunnable<WaitDialog>() {
    @Override
    public void run(WaitDialog dialog) {
        //when dismiss run
    }
});
​
new MessageDialog("title","message content","ok"){
    @Override
    public void onDismiss(MessageDialog dialog) {
        super.onDismiss(dialog);
        //when dismiss run
    }
};
​
BottomDialog.build()
        .setDialogLifecycleCallback(new DialogLifecycleCallback<BottomDialog>() {
            @Override
            public void onDismiss(BottomDialog dialog) {
                super.onDismiss(dialog);
                //when dismiss run
            }
        })
        .show();

想要好看的皮肤?担心 app 体积爆炸?自由度不够?

image-20240110154549744.png

DialogX 采用了主题分离结构,主框架仅包含 Material 设计风格的对话框组件,您可以通过额外引入主题包来实现主题的扩展,完全无需担心大量的主题素材资源占用

同时提供了大量的扩展接口,满足深度定制符合 app 设计的对话框 UI,从动画细节、界面样式、按钮排布都完全可以定制,从单次修改、组件内设置、全局的各种设置,完全满足定制化需求

基础功能太少?来看看 Demo 吧!

image-20240110154900868.png

为了尽量避免不必要的资源体积占用,DialogX 本身不带业务逻辑相关的功能,只提供了最纯粹的基础对话框。

但是为了丰富业务场景的需求,提供了独立可直接引入使用的 DialogXSample 功能扩展包,也可集成代码自行修改满足自己的业务需求

从地址选择器、日期选择器、文件选择器到相册选择器,DialogXSample 提供了大量范例功能,参照开源的范例代码,依据自己的需求定制和修改功能,快速完成 app 的构建!

尾巴

减少需要顾虑的,需要担心的,需要操心的,打造更符合敏捷开发需要,符合各种使用习惯的一款可以在任意时间,任意情况都能轻松使用的对话框组件,快来试试 DialogX 吧!github.com/kongzue/Dia…