浏览代码

If there's a min length for input dialogs, but no max length, the min/max label is hidden

Aidan Follestad 9 年之前
父节点
当前提交
698bbba040
共有 1 个文件被更改,包括 7 次插入3 次删除
  1. 7 3
      core/src/main/java/com/afollestad/materialdialogs/MaterialDialog.java

+ 7 - 3
core/src/main/java/com/afollestad/materialdialogs/MaterialDialog.java

@@ -1247,7 +1247,7 @@ public class MaterialDialog extends DialogBase implements
         }
 
         public Builder inputRange(@IntRange(from = 0, to = Integer.MAX_VALUE) int minLength,
-                                  @IntRange(from = 1, to = Integer.MAX_VALUE) int maxLength) {
+                                  @IntRange(from = -1, to = Integer.MAX_VALUE) int maxLength) {
             return inputRange(minLength, maxLength, 0);
         }
 
@@ -1733,13 +1733,17 @@ public class MaterialDialog extends DialogBase implements
 
     protected void invalidateInputMinMaxIndicator(int currentLength, boolean emptyDisabled) {
         if (inputMinMax != null) {
-            inputMinMax.setText(String.format("%d/%d", currentLength, mBuilder.inputMaxLength));
+            if (mBuilder.inputMaxLength > 0) {
+                inputMinMax.setText(String.format("%d/%d", currentLength, mBuilder.inputMaxLength));
+                inputMinMax.setVisibility(View.VISIBLE);
+            } else inputMinMax.setVisibility(View.GONE);
             final boolean isDisabled = (emptyDisabled && currentLength == 0) ||
                     (mBuilder.inputMaxLength > 0 && currentLength > mBuilder.inputMaxLength) ||
                     currentLength < mBuilder.inputMinLength;
             final int colorText = isDisabled ? mBuilder.inputRangeErrorColor : mBuilder.contentColor;
             final int colorWidget = isDisabled ? mBuilder.inputRangeErrorColor : mBuilder.widgetColor;
-            inputMinMax.setTextColor(colorText);
+            if (mBuilder.inputMaxLength > 0)
+                inputMinMax.setTextColor(colorText);
             MDTintHelper.setTint(input, colorWidget);
             final View positiveAb = getActionButton(DialogAction.POSITIVE);
             positiveAb.setEnabled(!isDisabled);