转载请注明出处:王亟亟的大牛之路
之前写了 5篇自定义Activity相关的文章,按照计划上一篇关于自定义控件的内容,本篇内容是在MaterialDialog之上构建的,所以对内部方法不了解的可以去看下MaterialDialog的实现,
MaterialDialogcompile 'com.afollestad:material-dialogs:0.7.9.1'
先上下效果图:
星数未满3星
流程分析:
1.我们点击按钮。
2.弹出Dialog。
3.看到Title,Message,以及3个选项。
4.选择选项内容并填充星数。
5.如果星数控件.getRating() <= 3 显示询问Dialog,大于3直接提交
6.查看询问内容,选择稍后提交or发送邮件给管理邮箱,结束
大致的逻辑很清楚那我们来分析下代码
public class FiveStarsDialog {
private final static String DEFAULT_TITLE = "评价产品分数";
private final static String DEFAULT_TITLE_SUPPORT = "需要支持?";
private final static String DEFAULT_POSITIVE = "提交";
private final static String DEFAULT_NEGATIVE = "稍后再提交";
private final static String DEFAULT_NEVER = "从不";
private final static String SP_NUM_OF_ACCESS = "numOfAccess";
private static final String SP_DISABLED = "disabled";
private final Context context;
private MaterialDialog ratingDialog;
private String packageName;
private String negativeMessag