GithubHelp home page GithubHelp logo

ydialog's Introduction

YDialog

PRs Welcome

原生dialog

原生dialog实现了单个按钮弹窗,两个按钮弹窗,三个按钮弹窗,列表弹窗,单选列表弹窗,多选列表弹窗,加载中弹窗 所有的原生dialog都可以直接调用GeneralDialog中的静态方法,传入相应的数据即可

单个按钮弹窗

                GeneralDialog.dialogWithOneBtn(MainActivity.this, "单个按钮", "单个按钮弹窗", new IBaseDialogClickCallback() {
                    @Override
                    public void onClickPositive() {
                        Toast.makeText(MainActivity.this, "点击确认按钮", Toast.LENGTH_SHORT).show();
                    }

                    @Override
                    public void onClickNegative() {

                    }
                });

两个按钮弹窗

                GeneralDialog.dialogWithTwoBtn(MainActivity.this, "两个按钮", "两个按钮的弹窗", new IBaseDialogClickCallback() {
                    @Override
                    public void onClickPositive() {
                        Toast.makeText(MainActivity.this, "点击确认按钮", Toast.LENGTH_SHORT).show();
                    }

                    @Override
                    public void onClickNegative() {
                        Toast.makeText(MainActivity.this, "点击取消按钮", Toast.LENGTH_SHORT).show();
                    }
                });

三个按钮弹窗

                GeneralDialog.dialogWithThreeBtn(MainActivity.this, "三个按钮", "三个按钮的弹窗", "中间按钮", new IThreeBtnDialogClickCallback() {
                    @Override
                    public void onClickNeutral() {
                        Toast.makeText(MainActivity.this, "点击中间按钮", Toast.LENGTH_SHORT).show();
                    }

                    @Override
                    public void onClickPositive() {
                        Toast.makeText(MainActivity.this, "点击确认按钮", Toast.LENGTH_SHORT).show();
                    }

                    @Override
                    public void onClickNegative() {
                        Toast.makeText(MainActivity.this, "点击取消按钮", Toast.LENGTH_SHORT).show();
                    }
                });

列表弹窗

                final String[] items = new String[]{"选项1", "选项2", "选项3", "选项4", "选项5", "选项6", "选项7"};
                GeneralDialog.dialogWithList(MainActivity.this, "列表弹窗", items, new IDialogListClickCallback() {
                    @Override
                    public void onClickDialogList(int position) {
                        Toast.makeText(MainActivity.this, "你选了第" + (position + 1) + "个对象,内容是" + items[position], Toast.LENGTH_SHORT).show();
                    }
                });

单选列表弹窗

                final String[] items = new String[]{"选项1", "选项2", "选项3", "选项4", "选项5", "选项6", "选项7"};
                GeneralDialog.dialogSingleSelect(MainActivity.this, "单选弹窗", items, new IListDialogSelectCallback() {
                    @Override
                    public void onListDialogClick(List<Integer> positions) {
                        Toast.makeText(MainActivity.this, "你选择了第" + (positions.get(0) + 1) + "个对象,内容是" + items[positions.get(0)], Toast.LENGTH_SHORT).show();
                    }
                });

多选列表弹窗

                final String[] items = new String[]{"选项1", "选项2", "选项3", "选项4", "选项5", "选项6", "选项7"};
                GeneralDialog.dialogMultiSelect(MainActivity.this, "复选弹窗", items, new IListDialogSelectCallback() {
                    @Override
                    public void onListDialogClick(List<Integer> positions) {
                        String ss = "";
                        for (int i = 0; i < positions.size(); i++) {
                            if (i == positions.size() - 1) {
                                ss += (i + 1);
                            } else {
                                ss += (i + 1 + ",");
                            }
                        }
                        Toast.makeText(MainActivity.this, "你选择的有一下几个对象:" + ss, Toast.LENGTH_SHORT).show();
                    }
                });

加载中弹窗

                final ProgressDialog dialog = GeneralDialog.dialogProgress(MainActivity.this,"加载中弹窗","加载中");
                new Handler().postDelayed(new Runnable() {
                    @Override
                    public void run() {
                        if (dialog != null){
                            dialog.dismiss();
                        }
                    }
                },3000);

ydialog's People

Contributors

niupuyue avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.