一: 效果图
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() {