传递整数而不是资源颜色

Pass integer instead of resource color

我正在使用 library 来显示一些不错的对话框。我现在到了崩溃的地步。如果我传递资源(例如 R.color.thatRedColor),对话框将具有红色背景色。当我传递一个整数(应该使用它)时,应用程序崩溃了。有什么方法可以使用整数传递有效值?

我colors.xml

中使用的线路
<color name="indigo">#3f51b5</color>

我的代码

int primaryColor = 11243910;

new MaterialStyledDialog(context)
    .setHeaderColor() //If I pass R.color.indigo, it works. If I pass primaryColor, it crashes..
    .setDescription("Hello")
    .setPositive("Ok", new MaterialDialog.SingleButtonCallback() {
        @Override
        public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
            //Do something
        }
    })
    .setNegative("No", new MaterialDialog.SingleButtonCallback() {
        @Override
        public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
            //Don't do anything
        }
    })

    .withDivider(false)
    .show();

根据源代码,使用 setHeaderColorInt() 而不是 setHeaderColor() 来传递实际颜色值而不是颜色资源 ID。

如果遇到包冲突,请添加以下内容:

compile ('com.github.javiersantos:MaterialStyledDialogs:1.5.5') {
    exclude group: 'com.afollestad.material-dialogs';
}