Android 仿IOS 样式的 dailog

一: 效果图

Android 仿IOS 样式的 dailog_第1张图片
dialog.gif

GitHub地址 JiangHaiYang01/IOS_Dialog

二: 使用

Step 1. Add it in your root build.gradle at the end of repositories:

    allprojects {
        repositories {
            ...
            maven { url 'https://www.jitpack.io' }
        }
    }

Step 2. Add the dependency

    dependencies {
            implementation 'com.github.JiangHaiYang01:IOS_Dialog:1.0.0'
    }

三.使用说明

1. 底部弹出

      new IosSheetDialog(MainActivity.this)
                        .builder()
                        .setCancelable(true)//是否点击返回能够取消
                        .setCancelOutside(true)//点击其他位置是否能够取消
                        .setTitle("设置头像")//设置title
                        .setTitleColor(Color.GRAY)//title 颜色
                        .setTitleSize(14)//title  字体大小
                        .setLineColor(Color.RED)//间隔线颜色
                        .setLineHeight(1)//间隔线的高度
//                        .hideLine()//隐藏间隔线
                        .setCancelTvMsg("取消")//设置cancel 文案
                        .setCancelTvColor(Color.RED)//设置cancel  颜色
                        .setCancelTvSize(16)//设置cancel 字体大小
                        .setItemTextSize(18)//设置全局 item  字体大小
//                        .setItemHeight(100)//设置全局 item  高度
                        .setCancelHeight(80)//设置cancel  高度大小
//                        .setBgCancel() //cancel 的样式
//                        .setBgMultipleBottom()  //当item 多个的时候 最下面的一个item 样式
//                        .setBgMultipleCenter() //当item 多个的时候  中间item的样式
//                        .setBgSingleCenter()  //当 item 只有一个的时候  item  样式
//                        .setBgTitle() //title 的样式
//                        .setBgMultipleTop()   //当item 多个的时候 最上面的一个item 样式
                        .addSheetItem("相册",Color.RED,12, new IosSheetDialog.OnSheetItemClickListener() {
                            @Override
                            public void onClick(int which) {
                                Toast.makeText(MainActivity.this, which + "", Toast.LENGTH_SHORT).show();
                            }
                        })
                        .addSheetItem("相册1",Color.RED, new IosSheetDialog.OnSheetItemClickListener() {
                            @Override
                            public void onClick(int which) {
                                Toast.makeText(MainActivity.this, which + "", Toast.LENGTH_SHORT).show();
                            }
                        })
                        .addSheetItem("拍照", new IosSheetDialog.OnSheetItemClickListener() {
                            @Override
                            public void onClick(int which) {
                                Toast.makeText(MainActivity.this, which + "", Toast.LENGTH_SHORT).show();
                            }
                        })
                        .show();

其他API

//设置取消的文字
 public IosSheetDialog setCancelTvMsg(String msg) {
//设置取消的字体大小
    public IosSheetDialog setCancelTvSize(int size) {
//设置取消的颜色
    public IosSheetDialog setCancelTvColor(int color) {
//设置标题颜色
    public IosSheetDialog setTitleColor(int color) {
//设置标题大小
    public IosSheetDialog setTitleSize(int size) {
//设置item 字体大小
    public IosSheetDialog setItemTextSize(int size) {
//设置item  高度
    public IosSheetDialog setItemHeight(int height) {
//设置最大数目多少时候  会有滚动效果
    public IosSheetDialog setMaxItemSize(int maxItemSize) {
//获取item  的tv
    public TextView getItemTextView(int pos) {
//返回title  tv
    public TextView getTitleTv() {
  //返回 取消 tv
    public TextView getCancelTv() {

2. 标准样式的dialog

   findViewById(R.id.btn_2).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                new IosDialog(MainActivity.this)
                        .builder()
                        .setCancelable(true)
                        .setCancelOutside(true)
                        .setTitle("标题")
                        .setMsg("内容")
                        .setDialogWidth(0.9f)

                        .setPositiveButton("确定", new View.OnClickListener() {
                            @Override
                            public void onClick(View v) {
                                Toast.makeText(MainActivity.this, "确定", Toast.LENGTH_SHORT).show();
                            }
                        })
                        .setNegativeButton("取消", new View.OnClickListener() {
                            @Override
                            public void onClick(View v) {
                                Toast.makeText(MainActivity.this, "取消", Toast.LENGTH_SHORT).show();
                            }
                        })

                        .show();
            }
        });

还可以添加多个EditText


        findViewById(R.id.btn_4).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                new IosDialog(MainActivity.this)
                        .builder()
                        .addEdit("1")
                        .setEditHint("1","123")
                        .addEdit("2")
                        .setEditHint("2","345")
                        .setCancelable(true)
                        .setCancelOutside(true)
                        .setTitle("标题")
                        .setMsg("内容")
                        .setDialogWidth(0.9f)
                        .setPositiveButton(new IosDialog.OnEdPositiveListener() {
                            @Override
                            public void onClick(View view, HashMap msgMap) {
                                Toast.makeText(MainActivity.this, "msg: " + msgMap.toString(), Toast.LENGTH_SHORT).show();
                            }

                        })
                        .setNegativeButton("取消", new View.OnClickListener() {
                            @Override
                            public void onClick(View v) {
                                Toast.makeText(MainActivity.this, "取消", Toast.LENGTH_SHORT).show();
                            }
                        })

                        .show();
            }
        });

api

//设置对应edit  的hint
    public IosDialog setEditHint(String tag, String hint) {
//设置颜色
    public IosDialog setEditTextColor(String tag, int color) {
//padding
 public IosDialog setEditTextPadding(String tag, float left, float top, float right, float bottom) {
//marginn
   public IosDialog setEditTextMargin(String tag, float left, float top, float right, float bottom) {

//是否显示光标
    public IosDialog setCursorVisible(String tag, Boolean isShowCursor) {
//设置dialog  宽度
    public IosDialog setDialogWidth(float dialogWidth) {
//获取title
    public TextView getTxt_title() {
// 获取msg
    public TextView getTxt_msg() {
//获取确定按钮
    public Button getBtn_neg() {
//获取用于添加自定义控件的ll
    public LinearLayout getlLayout_alert_ll() {

你可能感兴趣的:(Android 仿IOS 样式的 dailog)