Multiple types dialog in android program use DialogFragment
Add it in your root build.gradle at the end of repositories:
allprojects { repositories { ... maven { url 'https://jitpack.io' } } }
dependencies { compile 'com.github.jessieeeee:DialogUtil:v1.1' }
###How to Use
- normalDialog
NormalDialogFragment.newInstance()
.setContent("这只是一个普通的提示弹窗")
.setSureTextColor(R.color.white)
.setCancelTextColor(R.color.default_blue)
.setSuretext("确定")
.setCanceltext("取消")
.setDividerHorizontalColor(R.color.default_line)
.setDividerVerticalColor(R.color.default_line)
.hideIcon()
.setSureBg(R.drawable.dialog_btn_bg_round)
.setOnBtnClickListener(new BaseNormalDialogFragment.ClickListener() {
@Override
public void clickSure() {
Toast.makeText(context, "点击了确定", Toast.LENGTH_SHORT).show();
}
@Override
public void clickCancel() {
Toast.makeText(context, "点击了取消", Toast.LENGTH_SHORT).show();
}
})
.setDialogAnimation(BaseListDialogFragment.BOTTOM_TO_TOP)
.showDialog(getFragmentManager());
- listDialog
List<Item> items = new ArrayList<>();
items.add(new Item(1, "通讯录", getResources().getDrawable(R.mipmap.icon_content_phone)));
items.add(new Item(2, "好友", getResources().getDrawable(R.mipmap.icon_friend)));
items.add(new Item(3, "朋友圈", getResources().getDrawable(R.mipmap.icon_moments)));
items.add(new Item(4, "微信", getResources().getDrawable(R.mipmap.icon_wechat)));
items.add(new Item(5, "微博", getResources().getDrawable(R.mipmap.icon_weibo)));
ListDialogFragment.newInstance(orientation)
.setListTitleText("分享到")
.setListTitleColor(R.color.black)
.setBackText("返回")
.setSureText("确定")
.setRowNum(3) //仅在网格布局有效
.setBackTextTitleColor(R.color.colorAccent)
.setSureTextTitleColor(R.color.colorAccent)
.setItems(items)
.setTitleBarColor(R.color.white)
.setListColor(R.color.white)
.setItemTextColor(R.color.black)
.setMultipleChoice(multipleChoice)
.setSelectBackgroundColor(R.color.white)
.setSelectItemTextColor(R.color.colorAccent)
.setGravity(gravity)
.setClickListener(new BaseListDialogFragment.ClickListener() { //只在多选时有效
@Override
public void clickSure(List<Item> selectItems) {
if(selectItems.size()>0){
String selectStr="";
Iterator<Item> it=selectItems.iterator();
while(it.hasNext()){
selectStr+=" "+it.next().getTitle();
}
Toast.makeText(context, "选择了"+selectStr, Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(context, "点击了确定", Toast.LENGTH_SHORT).show();
}
}
@Override
public void clickBack() {
Toast.makeText(context, "点击了取消", Toast.LENGTH_SHORT).show();
}
})
.setOnItemClickListener(new DialogListAdapter.OnItemClickListener() {
@Override
public void click(Item item, BaseListDialogFragment baseListDialogFragment) {
Toast.makeText(context, item.getTitle(), Toast.LENGTH_SHORT).show();
if(!multipleChoice){
baseListDialogFragment.dismiss();
}
}
})
.setDialogAnimation(animation)
.showDialog(getFragmentManager());
- loadDialog
LoadDialogFragment loadDialogFragment = LoadDialogFragment.newInstance()
.setLoadMsgText("正在加载中")
.setLoadImg(R.drawable.load_progress)
.setLoadShape1(R.drawable.load_cicle_blue)
.setLoadShape2(R.drawable.load_cicle_gray)
.setBackgroundShape(R.drawable.bg_load)
.setLoadMsgColor(R.color.white);
loadDialogFragment .setDialogAnimation(BaseListDialogFragment.BOTTOM_TO_TOP).showDialog(getFragmentManager());
// loadDialogFragment.dismiss();