AUImageDialog(原 SalesPromotionLimitDialog)提供一个带顶部标题、三级文案、底部确认按钮或者底部左右按钮,且中间包含一个 ImageView 的对话框。该组件可用于限流的消息提示。
效果图
接口说明
public interface OnItemClickListener {
void onItemClick(int index);
}
/**
* 获取 AUImageDialog 实例
*
* @param context context 对象
* @return 返回一个 AUImageDialog 实例
*/
public static AUImageDialog getInstance(Context context)
/**
* 关闭监听
*
* @param mCloseBtnClickListener
*/
public void setCloseBtnClickListener(View.OnClickListener mCloseBtnClickListener)
/**
* 设置一级标题文案
*/
public void setTitle(CharSequence title)
/**
* 设置一级标题文案字体大小,单位为 sp
*
* @param size
*/
public void setTitleTextSize(float size)
/**
* 设置一级标题可见性
*
* @param visibility
*/
public void setTitleTextVisibility(int visibility)
}
/**
* 设置二级标题可见性
*
* @param visibility
*/
public void setSubTitleTextVisibility(int visibility)
/**
* 设置一级标题颜色
*
* @param color
*/
public void setTitleTextColor(int color)
/**
* 设置二级标题文案
*
* @param title
*/
public void setSubTitle(CharSequence title)
/**
* 设置二级标题字体大小,单位为 sp
*
* @param size
*/
public void setSubTitleTextSize(float size)
/**
* 设置二级标题文案颜色
*
* @param color
*/
public void setSubTitleTextColor(int color)
/**
* 设置三级标题文案
*
* @param text
*/
public void setThirdTitleText(String text)
/**
* 设置三级标题颜色
*
* @param color
*/
public void setThirdTitleTextColor(int color)
/**
* 设置 ImageView 的背景
*
* @param drawable
*/
public void setLogoBackground(Drawable drawable)
/**
* 设置 ImageView 的背景
*
* @param resid
*/
public void setLogoBackgroundResource(int resid)
/**
* 设置 ImageView 的背景颜色
*
* @param color
*/
public void setLogoBackgroundColor(int color)
/**
* 设置对话框的背景透明度
*
* @param alpha
*/
public void setBackgroundTransparency(float alpha)
/**
* 返回是否使用动画
*/
public boolean isUsdAnim()
/**
* 设置对话框显示、消失时是否使用动画,默认为 true
*
* @param usdAnim
*/
public void setUsdAnim(boolean usdAnim)
/**
* 设置关闭按钮是否可见
*
* @param visibility
*/
public void setCloseButtonVisibility(int visibility)
/**
* 设置确认按钮文案
*
* @param text
*/
public void setConfirmBtnText(String text)
/**
* 返回确认按钮
*/
public Button getConfirmBtn()
/**
* 设置确认按钮点击监听
*
* @param clickListener
*/
public void setOnConfirmBtnClickListener(View.OnClickListener clickListener)
/**
* 不带动画的显示对话框
*/
public void showWithoutAnim()
/**
* 设置倒计时
* @param seconds 倒计时秒
* @param tickColor
* @param action
* @param clickListener
* @param timerListener
*/
public void showWithTimer(int seconds, String tickColor, String action, View.OnClickListener clickListener, TimerListener timerListener)
public void showWithTimer(int seconds, View.OnClickListener clickListener, TimerListener timerListener)
/**
* 获取默认的倒计时颜色
* @return
*/
public String getDefaultTimeColorStr()
/**
* 不带动画的 dismiss dialog
*/
public void dismissWithoutAnim()
@Override
public void dismiss()
public boolean isCanceledOnTouch() {
return canceledOnTouch;
}
/**
* 设置是否点击中间图片时对话框自动取消
*
* @param canceledOnTouch
*/
public void setCanceledOnTouch(boolean canceledOnTouch)
/**
* 设置列表按钮
* @param buttonListInfo
* @param listener
*/
public void setButtonListInfo(List<String> buttonListInfo, OnItemClickListener listener)
public ImageView getLogoImageView() {
return bgImageView;
}
public TextView getTitleTextView() {
return titleTextView_1;
}
public TextView getSubTitleTextView() {
return titleTextView_2;
}
public TextView getThirdTitleTextView() {
return titleTextView_3;
}
public ImageView getBottomLine() {
return bottomLine;
}
代码示例
AUImageDialog dialog = AUImageDialog.getInstance(this);
dialog.showWithTimer(5, null, null);
AUImageDialog dialog = AUImageDialog.getInstance(this);
dialog.setCanceledOnTouch(true);
dialog.setTitle("标题单行");
dialog.setSubTitle("说明当前状态、提示用户解决方案,最好不要超过两行。");
dialog.setConfirmBtnText("行动按钮");
dialog.showWithoutAnim();
AUImageDialog dialog = AUImageDialog.getInstance(this);
dialog.setCanceledOnTouch(true);
dialog.setTitle("一级文案");
dialog.setSubTitle("二级文案");
dialog.setThirdTitleText("同意xxx协议");
dialog.setConfirmBtnText("行动按钮");
dialog.showWithoutAnim();
AUImageDialog dialog = AUImageDialog.getInstance(this);
dialog.setTitle("标题单行");
dialog.setSubTitle("描述文字的字数尽量控制在三行内,并且单行最右侧尽量不要是标点符号。");
dialog.setButtonListInfo(getData(), new AUImageDialog.OnItemClickListener() {
@Override
public void onItemClick(int index) {
}
});
dialog.showWithoutAnim();
文档内容是否对您有帮助?