美文网首页高级UI
安卓Dialog,仿ios

安卓Dialog,仿ios

作者: A大心 | 来源:发表于2019-11-22 14:12 被阅读0次

NDialog

链式调用设置Dialog字体大小、颜色、位置等属性

效果图

image

使用方法

Gradle

implementation 'com.necer.ndialog2:ndialog:1.1.4'

具体用法:

直达MainActivity

demo:

下载demo

NDialog

基类,可设置的属性

dialogCornersRadius     //弹窗圆角大小
dialogBgColor           //弹窗背景颜色
dialogWidth             //弹窗宽度,建议依屏幕的宽为参考
dialogHeight            //弹窗高度,建议依屏幕的高为参考
cancleable              //弹窗是否可取消
canceledOnTouchOutside  //弹窗之外点击是否可取消
isFromBottom            //弹窗是否底部弹出
windowAnimation         //弹窗弹出动画资源文件
dimAmount               //弹窗弹出时,窗体的灰度 0.0f-1.0f 0.0f为透明 1.0f为全黑

继承自 NDialog 的 Dialog 需先调用自身的方法设置属性,再调用 NDialog 的方法设置 Dialog 的属性,最后 .create().show();

ConfirmDialog

确认提示框,可设置的属性

title     //可设置 title 的字体大小、颜色、样式、padding 等 设置显示,不设置不显示
message   //可设置 message 的字体大小、颜色、样式、padding 等
isIos     //ios 样式的弹窗 预先设置了 ios 弹窗的属性,但可以 set 对应属性改变,可设置分割线宽度,颜色等

完整调用如下

new ConfirmDialog(this,false)    
                .setTtitle()
                .setTitleSize()
                .setTitleColor()
                .setMessage()
                .setMessageSize()
                .setMessageColor()
                .setPositiveButton()
                .setIosDividerColor()
                .setIosDividerSize()
                .setPositiveButtonSize()
                .setPositiveButtonColor()
                .setNegativeButton()
                .setNegativeButtonSize()
                .setNegativeButtonColor()
                .setDialogWidth()
                .setDialogHeight()
                .setDialogCornersRadius()
                .setWindowAnimation()
                .setIsFromBottom()
                .setCancelable()
                .setCanceledOnTouchOutside()
                .setDimAmount()
                .create()
                .show();

ChoiceDialog

选择框 可设置的属性

title      //可设置 title 的字体大小、颜色、样式、padding 等,设置显示,不设置不显示
items      //Object[] 显示 toString()的内容 可设置 itemText 字体大小、颜色、位置、样式等,可设置 item 高度、padding 等
isIos      //ios样式的选择框 预先设置了 ios 选择框的属性,但可以 set 对应属性改变,可设置分割线宽度,颜色等
divider    //分割线颜色 高度等

完整调用如下

new ChoiceDialog(this,false)
                .setTtitle()
                .setTitleSize()
                .setTitleColor()
                .setTitleGravity()
                .setTtitlePadding()
                .setTitleTypeface()
                .setTitleMaxLines()
                .setItems()
                .setItemTextSize()
                .setItemTextColor()
                .setItemTextPadding()
                .setItemDividerPadding()
                .setCancleButtonText()
                .setItemTextGravity()
                .setItemTextTypeface()
                .setOnItemClickListener()
                .setItemHeight()
                .setDividerHight()
                .setDividerColor()
                .hasCancleButton()
                .setDialogWidth()
                .setDialogHeight()
                .setDialogCornersRadius()
                .setWindowAnimation()
                .setIsFromBottom()
                .setCancelable()
                .setCanceledOnTouchOutside()
                .setDimAmount()
                .create()
                .show();

自定义Dialog

继承自 NDialog 实现 setDialogDetails(Context context,AlertDialog alertDialog) 方法,
调用 alertDialog.setContentView(View v) 即可根据自己的需求实现 dialog ,
同时可调用 NDialog 中的方法设置公有属性,如:

public class CustomDialog extends NDialog {
    public CustomDialog(Context context) {
        super(context);
    }
    @Override
    protected void setDialogDetails(Context context,AlertDialog alertDialog) {
        View inflate = LayoutInflater.from(context).inflate(R.layout.dialog_custom, null);
        alertDialog.setContentView(inflate);

        //可在这里设置 NDialog 的属性

        setCanceledOnTouchOutside(true);
        setCancelable(true);
        setDimAmount(0.0F);

    }
}

调用:

new CustomDialog(this)
                .setDialogCornersRadius(5f)
                .setDialogHeight((int) Util.dp2px(this, 100))
                .setDialogWidth((int) Util.dp2px(this, 100))
                .create().show();

项目地址:https://github.com/yannecer/NDialog

相关文章

  • 安卓Dialog,仿ios

    NDialog 链式调用设置Dialog字体大小、颜色、位置等属性 效果图 使用方法 Gradle 具体用法: 直...

  • Flutter之Dialog 对话框各种用法

    前言: 各位同学大家好 ,相信移动端(安卓, iOS )和前端的同学都有使用过dialog对话框 ,移动端(安卓 ...

  • 自定义Dialog

    仿IOS自定义的Dialog: 1、Util帮助类创建dialog 2、布局文件 :loading_dialog....

  • Dialog

    安卓dialog的使用+如何自定义dialog自定义Dialog自定义Dialog 自定义

  • iOS 仿安卓土司

    -(void)showMessage:(NSString*)message { UIWindow* window ...

  • 安卓仿IOS SwitchButton

    一个好用的SwitchButton控件,开源地址:https://github.com/YaYaG/IOSSwit...

  • iOS,安卓概览图

    iOS: 安卓:

  • js与安卓IOS交互

    这篇主要是讲JS这部分的安卓IOS就不用看了!!一:用来判断是安卓设备还是IOS设备 二:js调用安卓和IOS方式...

  • HTML5访问调用手机相机、相册功能

    直接放代码(以下代码为亲测得出的结果): 安卓和IOS都为:拍照 安卓和IOS都为:录像 安卓为录音...

  • 安卓仿IOS开关设计

    做安卓APP的程序猿们一定有这样的苦衷:UI们所做的原型图均是参照IOS的界面做的,很多IOS自带的组件在安卓系统...

网友评论

    本文标题:安卓Dialog,仿ios

    本文链接:https://www.haomeiwen.com/subject/vdtqwctx.html