代码都是封装好了的,直接new出来用,如果觉得想自定义样式的话,可以仿着源代码写自己的样式。
地址:https://github.com/H07000223/FlycoDialog_Master
Gradle:
After v1.2.6
dependencies{
compile 'com.flyco.dialog:FlycoDialog_Lib:1.2.6@aar'
compile 'com.nineoldandroids:library:2.4.0'
}
详细下载Demo,里面还有pupop。
下面贴出dialog的源码:
NormalDialog | 默认(两个按钮) | ![]() |
- private void NormalDialogStyleOne() {
- final NormalDialog dialog = new NormalDialog(mContext);
- dialog.content("是否确定退出程序?")//
- .showAnim(mBasIn)//
- .dismissAnim(mBasOut)//
- .show();
- dialog.setOnBtnClickL(
- new OnBtnClickL() {
- @Override
- public void onBtnClick() {
- T.showShort(mContext, "left");
- dialog.dismiss();
- }
- },
- new OnBtnClickL() {
- @Override
- public void onBtnClick() {
- T.showShort(mContext, "right");
- dialog.dismiss();
- }
- });
- }
NormalDialog | 第二种风格 | ![]() |
- private void NormalDialogStyleTwo() {
- final NormalDialog dialog = new NormalDialog(mContext);
- dialog.content("为保证咖啡豆的新鲜度和咖啡的香味,并配以特有的传统烘焙和手工冲。")//
- .style(NormalDialog.STYLE_TWO)//
- .titleTextSize(23)//
- .showAnim(mBasIn)//
- .dismissAnim(mBasOut)//
- .show();
- dialog.setOnBtnClickL(
- new OnBtnClickL() {
- @Override
- public void onBtnClick() {
- T.showShort(mContext, "left");
- dialog.dismiss();
- }
- },
- new OnBtnClickL() {
- @Override
- public void onBtnClick() {
- T.showShort(mContext, "right");
- dialog.dismiss();
- }
- });
- }
NormalDialog | 自定义属性 | ![]() |
- private void NormalDialogCustomAttr() {
- final NormalDialog dialog = new NormalDialog(mContext);
- dialog.isTitleShow(false)//
- .bgColor(Color.parseColor("#383838"))//
- .cornerRadius(5)//
- .content("是否确定退出程序?")//
- .contentGravity(Gravity.CENTER)//
- .contentTextColor(Color.parseColor("#ffffff"))//
- .dividerColor(Color.parseColor("#222222"))//
- .btnTextSize(15.5f, 15.5f)//
- .btnTextColor(Color.parseColor("#ffffff"), Color.parseColor("#ffffff"))//
- .btnPressColor(Color.parseColor("#2B2B2B"))//
- .widthScale(0.85f)//
- .showAnim(mBasIn)//
- .dismissAnim(mBasOut)//
- .show();
- dialog.setOnBtnClickL(
- new OnBtnClickL() {
- @Override
- public void onBtnClick() {
- T.showShort(mContext, "left");
- dialog.dismiss();
- }
- },
- new OnBtnClickL() {
- @Override
- public void onBtnClick() {
- T.showShort(mContext, "right");
- dialog.dismiss();
- }
- });
- }
NormalDialog | 一个按钮 | ![]() |
- private void NormalDialogOneBtn() {
- final NormalDialog dialog = new NormalDialog(mContext);
- dialog.content("你今天的抢购名额已用完~")//
- .btnNum(1)
- .btnText("继续逛逛")//
- .showAnim(mBasIn)//
- .dismissAnim(mBasOut)//
- .show();
- dialog.setOnBtnClickL(new OnBtnClickL() {
- @Override
- public void onBtnClick() {
- T.showShort(mContext, "middle");
- dialog.dismiss();
- }
- });
- }
NormalDialog | 三个按钮 | ![]() |
- private void NormalDialoThreeBtn() {
- final NormalDialog dialog = new NormalDialog(mContext);
- dialog.content("你今天的抢购名额已用完~")//
- .style(NormalDialog.STYLE_TWO)//
- .btnNum(3)
- .btnText("取消", "确定", "继续逛逛")//
- .showAnim(mBasIn)//
- .dismissAnim(mBasOut)//
- .show();
- dialog.setOnBtnClickL(
- new OnBtnClickL() {
- @Override
- public void onBtnClick() {
- T.showShort(mContext, "left");
- dialog.dismiss();
- }
- },
- new OnBtnClickL() {
- @Override
- public void onBtnClick() {
- T.showShort(mContext, "right");
- dialog.dismiss();
- }
- },
- new OnBtnClickL() {
- @Override
- public void onBtnClick() {
- T.showShort(mContext, "middle");
- dialog.dismiss();
- }
- });
- }
MaterialDialog | 默认(两个按钮) | ![]() |
- private void MaterialDialogDefault() {
- final MaterialDialog dialog = new MaterialDialog(mContext);
- dialog.content(
- "嗨!这是一个 MaterialDialogDefault. 它非常方便使用,你只需将它实例化,这个美观的对话框便会自动地显示出来。"
- + "它简洁小巧,完全遵照 Google 2014 年发布的 Material Design 风格,希望你能喜欢它!^ ^")//
- .btnText("取消", "确定")//
- .showAnim(mBasIn)//
- .dismissAnim(mBasOut)//
- .show();
- dialog.setOnBtnClickL(
- new OnBtnClickL() {//left btn click listener
- @Override
- public void onBtnClick() {
- T.showShort(mContext, "left");
- dialog.dismiss();
- }
- },
- new OnBtnClickL() {//right btn click listener
- @Override
- public void onBtnClick() {
- T.showShort(mContext, "right");
- dialog.dismiss();
- }
- }
- );
- }
MaterialDialog | 一个按钮 | ![]() |
- private void MaterialDialogThreeBtns() {
- final MaterialDialog dialog = new MaterialDialog(mContext);
- dialog.isTitleShow(false)//
- .btnNum(3)
- .content("为保证咖啡豆的新鲜度和咖啡的香味,并配以特有的传统烘焙和手工冲。")//
- .btnText("确定", "取消", "知道了")//
- .showAnim(mBasIn)//
- .dismissAnim(mBasOut)//
- .show();
- dialog.setOnBtnClickL(
- new OnBtnClickL() {//left btn click listener
- @Override
- public void onBtnClick() {
- T.showShort(mContext, "left");
- dialog.dismiss();
- }
- },
- new OnBtnClickL() {//right btn click listener
- @Override
- public void onBtnClick() {
- T.showShort(mContext, "right");
- dialog.dismiss();
- }
- }
- ,
- new OnBtnClickL() {//middle btn click listener
- @Override
- public void onBtnClick() {
- T.showShort(mContext, "middle");
- dialog.dismiss();
- }
- }
- );
- }
MaterialDialog | 三个按钮 | ![]() |
- private void MaterialDialogOneBtn() {
- final MaterialDialog dialog = new MaterialDialog(mContext);
- dialog.btnNum(1)
- .content("为保证咖啡豆的新鲜度和咖啡的香味,并配以特有的传统烘焙和手工冲。")//
- .btnText("确定")//
- .showAnim(mBasIn)//
- .dismissAnim(mBasOut)//
- .show();
- dialog.setOnBtnClickL(new OnBtnClickL() {
- @Override
- public void onBtnClick() {
- T.showShort(mContext, "middle");
- dialog.dismiss();
- }
- });
- }
NormalListDialog | 默认 | ![]() |
- private ArrayList<DialogMenuItem> mMenuItems = new ArrayList<>();
- mMenuItems.add(new DialogMenuItem("收藏", R.mipmap.ic_winstyle_favor));
- mMenuItems.add(new DialogMenuItem("下载", R.mipmap.ic_winstyle_download));
- mMenuItems.add(new DialogMenuItem("分享", R.mipmap.ic_winstyle_share));
- mMenuItems.add(new DialogMenuItem("删除", R.mipmap.ic_winstyle_delete));
- mMenuItems.add(new DialogMenuItem("歌手", R.mipmap.ic_winstyle_artist));
- mMenuItems.add(new DialogMenuItem("专辑", R.mipmap.ic_winstyle_album));
- private void NormalListDialog() {
- final NormalListDialog dialog = new NormalListDialog(mContext, mMenuItems);
- dialog.title("请选择")//
- .showAnim(mBasIn)//
- .dismissAnim(mBasOut)//
- .show();
- dialog.setOnOperItemClickL(new OnOperItemClickL() {
- @Override
- public void onOperItemClick(AdapterView<?> parent, View view, int position, long id) {
- T.showShort(mContext, mMenuItems.get(position).mOperName);
- dialog.dismiss();
- }
- });
- }
NormalListDialog | 自定义属性 | ![]() |
- private void NormalListDialogCustomAttr() {
- final NormalListDialog dialog = new NormalListDialog(mContext, mMenuItems);
- dialog.title("请选择")//
- .titleTextSize_SP(18)//
- .titleBgColor(Color.parseColor("#409ED7"))//
- .itemPressColor(Color.parseColor("#85D3EF"))//
- .itemTextColor(Color.parseColor("#303030"))//
- .itemTextSize(14)//
- .cornerRadius(0)//
- .widthScale(0.8f)//
- .show(R.style.myDialogAnim);
- dialog.setOnOperItemClickL(new OnOperItemClickL() {
- @Override
- public void onOperItemClick(AdapterView<?> parent, View view, int position, long id) {
- T.showShort(mContext, mMenuItems.get(position).mOperName);
- dialog.dismiss();
- }
- });
- }
NormalListDialog | 无标题 | ![]() |
- private void NormalListDialogNoTitle() {
- final NormalListDialog dialog = new NormalListDialog(mContext, mMenuItems);
- dialog.title("请选择")//
- .isTitleShow(false)//
- .itemPressColor(Color.parseColor("#85D3EF"))//
- .itemTextColor(Color.parseColor("#303030"))//
- .itemTextSize(15)//
- .cornerRadius(2)//
- .widthScale(0.75f)//
- .show();
- dialog.setOnOperItemClickL(new OnOperItemClickL() {
- @Override
- public void onOperItemClick(AdapterView<?> parent, View view, int position, long id) {
- T.showShort(mContext, mMenuItems.get(position).mOperName);
- dialog.dismiss();
- }
- });
- }
ActionSheetDialog | 默认 | ![]() |
- private void ActionSheetDialog() {
- final String[] stringItems = {"接收消息并提醒", "接收消息但不提醒", "收进群助手且不提醒", "屏蔽群消息"};
- final ActionSheetDialog dialog = new ActionSheetDialog(mContext, stringItems, null);
- dialog.title("选择群消息提醒方式\r\n(该群在电脑的设置:接收消息并提醒)")//
- .titleTextSize_SP(14.5f)//
- .show();
- dialog.setOnOperItemClickL(new OnOperItemClickL() {
- @Override
- public void onOperItemClick(AdapterView<?> parent, View view, int position, long id) {
- T.showShort(mContext, stringItems[position]);
- dialog.dismiss();
- }
- });
- }
ActionSheetDialog | 无标题 | ![]() |
- private void ActionSheetDialogNoTitle() {
- final String[] stringItems = {"版本更新", "帮助与反馈", "退出QQ"};
- final ActionSheetDialog dialog = new ActionSheetDialog(mContext, stringItems, mElv);
- dialog.isTitleShow(false).show();
- dialog.setOnOperItemClickL(new OnOperItemClickL() {
- @Override
- public void onOperItemClick(AdapterView<?> parent, View view, int position, long id) {
- T.showShort(mContext, stringItems[position]);
- dialog.dismiss();
- }
- });
- }
相关功能控件:
Android第三方开源对话消息提示框:百度搜索 SweetAlertDialog(sweet-alert-dialog)