diff --git a/ColorDialog/src/main/java/cn/refactor/lib/colordialog/PromptDialog.java b/ColorDialog/src/main/java/cn/refactor/lib/colordialog/PromptDialog.java
index 52b1a73..a692ef6 100644
--- a/ColorDialog/src/main/java/cn/refactor/lib/colordialog/PromptDialog.java
+++ b/ColorDialog/src/main/java/cn/refactor/lib/colordialog/PromptDialog.java
@@ -11,11 +11,13 @@
import android.graphics.drawable.ShapeDrawable;
import android.graphics.drawable.shapes.RoundRectShape;
import android.os.Bundle;
+import android.text.InputType;
import android.view.View;
import android.view.ViewGroup;
import android.view.WindowManager;
import android.view.animation.Animation;
import android.view.animation.AnimationSet;
+import android.widget.EditText;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
@@ -37,16 +39,19 @@ public class PromptDialog extends Dialog {
public static final int DIALOG_TYPE_WRONG = 2;
public static final int DIALOG_TYPE_SUCCESS = 3;
public static final int DIALOG_TYPE_WARNING = 4;
+ public static final int DIALOG_TYPE_EDIT = 5;
public static final int DIALOG_TYPE_DEFAULT = DIALOG_TYPE_INFO;
private AnimationSet mAnimIn, mAnimOut;
private View mDialogView;
private TextView mTitleTv, mContentTv, mPositiveBtn;
+
+ private EditText editText;
private OnPositiveListener mOnPositiveListener;
private int mDialogType;
- private boolean mIsShowAnim;
- private CharSequence mTitle, mContent, mBtnText;
+ private boolean mIsShowAnim, mIsEditTextSecure;
+ private CharSequence mTitle, mContent, mBtnText, mEditTextContent, mEditTextHint;
public PromptDialog(Context context) {
this(context, 0);
@@ -82,6 +87,7 @@ private void initView() {
mTitleTv = (TextView) contentView.findViewById(R.id.tvTitle);
mContentTv = (TextView) contentView.findViewById(R.id.tvContent);
mPositiveBtn = (TextView) contentView.findViewById(R.id.btnPositive);
+ editText = (EditText) contentView.findViewById(R.id.editText);
View llBtnGroup = findViewById(R.id.llBtnGroup);
ImageView logoIv = (ImageView) contentView.findViewById(R.id.logoIv);
@@ -109,6 +115,26 @@ private void initView() {
mTitleTv.setText(mTitle);
mContentTv.setText(mContent);
mPositiveBtn.setText(mBtnText);
+
+ configureEditText();
+ }
+
+ private void configureEditText()
+ {
+ if(mDialogType == DIALOG_TYPE_EDIT)
+ {
+ editText.setVisibility(View.VISIBLE);
+ editText.setHint(mEditTextHint);
+ editText.setText(mEditTextContent);
+ if(mIsEditTextSecure)
+ {
+ editText.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD | InputType.TYPE_CLASS_TEXT);
+ }
+ }
+ else
+ {
+ editText.setVisibility(View.GONE);
+ }
}
private void resizeDialog() {
@@ -161,6 +187,9 @@ private int getLogoResId(int mDialogType) {
if (DIALOG_TYPE_WARNING == mDialogType) {
return R.mipmap.icon_warning;
}
+ if(DIALOG_TYPE_EDIT == mDialogType) {
+ return R.mipmap.icon_edit;
+ }
return R.mipmap.ic_info;
}
@@ -183,6 +212,10 @@ private int getColorResId(int mDialogType) {
if (DIALOG_TYPE_WARNING == mDialogType) {
return R.color.color_type_warning;
}
+ if(DIALOG_TYPE_EDIT == mDialogType) {
+ return R.color.color_type_edit;
+ }
+
return R.color.color_type_info;
}
@@ -205,6 +238,9 @@ private int getSelBtn(int mDialogType) {
if (DIALOG_TYPE_WARNING == mDialogType) {
return R.drawable.sel_btn_warning;
}
+ if(DIALOG_TYPE_EDIT == mDialogType) {
+ return R.drawable.sel_btn_edit;
+ }
return R.drawable.sel_btn;
}
@@ -375,4 +411,49 @@ public interface OnPositiveListener {
void onClick(PromptDialog dialog);
}
+ public EditText getEditText()
+ {
+ return editText;
+ }
+
+ public PromptDialog setEditTextContent(CharSequence editTextContent)
+ {
+ mEditTextContent = editTextContent;
+ return this;
+ }
+
+ public PromptDialog setEditTextContent(int resId)
+ {
+ mEditTextContent = getContext().getString(resId);
+ return this;
+ }
+
+ public CharSequence getEditTextContent()
+ {
+ return mEditTextContent;
+ }
+
+ public CharSequence getEditTextHint()
+ {
+ return mEditTextHint;
+ }
+
+ public PromptDialog setEditTextHint(CharSequence editTextHint)
+ {
+ mEditTextHint = editTextHint;
+ return this;
+ }
+
+ public PromptDialog setEditTextHint(int resId)
+ {
+ mEditTextHint = getContext().getString(resId);
+ return this;
+ }
+
+ public PromptDialog setIsEditTextContentSecure(Boolean isSecure)
+ {
+ mIsEditTextSecure = isSecure;
+ return this;
+ }
+
}
diff --git a/ColorDialog/src/main/res/drawable/black_border_background.xml b/ColorDialog/src/main/res/drawable/black_border_background.xml
new file mode 100644
index 0000000..0473999
--- /dev/null
+++ b/ColorDialog/src/main/res/drawable/black_border_background.xml
@@ -0,0 +1,9 @@
+
+
+ -
+
+
+
+
+
+
\ No newline at end of file
diff --git a/ColorDialog/src/main/res/drawable/sel_btn_edit.xml b/ColorDialog/src/main/res/drawable/sel_btn_edit.xml
new file mode 100644
index 0000000..dcc0255
--- /dev/null
+++ b/ColorDialog/src/main/res/drawable/sel_btn_edit.xml
@@ -0,0 +1,17 @@
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/ColorDialog/src/main/res/layout/layout_promptdialog.xml b/ColorDialog/src/main/res/layout/layout_promptdialog.xml
index 784c661..ad5043c 100755
--- a/ColorDialog/src/main/res/layout/layout_promptdialog.xml
+++ b/ColorDialog/src/main/res/layout/layout_promptdialog.xml
@@ -64,7 +64,23 @@
android:paddingRight="10dp"
android:paddingTop="5dp"
android:textColor="@color/color_dialog_content_prompt"
- android:visibility="visible" />
+ android:visibility="visible"
+ />
+
+
diff --git a/ColorDialog/src/main/res/mipmap/icon_edit.png b/ColorDialog/src/main/res/mipmap/icon_edit.png
new file mode 100644
index 0000000..7ebce45
Binary files /dev/null and b/ColorDialog/src/main/res/mipmap/icon_edit.png differ
diff --git a/ColorDialog/src/main/res/values/colors.xml b/ColorDialog/src/main/res/values/colors.xml
index 4dda489..8c1929f 100644
--- a/ColorDialog/src/main/res/values/colors.xml
+++ b/ColorDialog/src/main/res/values/colors.xml
@@ -9,4 +9,5 @@
#ed7861
#e8bd4b
#90b06e
+ #222da1
diff --git a/sample/src/main/java/cn/refactor/sample/colordialog/MainActivity.java b/sample/src/main/java/cn/refactor/sample/colordialog/MainActivity.java
index 38b1e9d..817b57f 100644
--- a/sample/src/main/java/cn/refactor/sample/colordialog/MainActivity.java
+++ b/sample/src/main/java/cn/refactor/sample/colordialog/MainActivity.java
@@ -25,6 +25,24 @@ public void showPromptDialog(View view) {
showPromptDlg();
}
+ public void showPromptDialogWithEditText(View view)
+ {
+ new PromptDialog(this)
+ .setDialogType(PromptDialog.DIALOG_TYPE_EDIT)
+ .setAnimationEnable(true)
+ .setTitleText("EDIT")
+ .setContentText("Sub Title")
+ .setEditTextHint("Enter Text")
+ .setPositiveListener(getString(R.string.edit), new PromptDialog.OnPositiveListener() {
+ @Override
+ public void onClick(PromptDialog dialog) {
+ dialog.dismiss();
+ Toast.makeText(MainActivity.this,dialog.getEditText().getText().toString(),Toast.LENGTH_LONG).show();
+ }
+ }).show();
+ }
+
+
private void showPromptDlg() {
new PromptDialog(this)
.setDialogType(PromptDialog.DIALOG_TYPE_SUCCESS)
diff --git a/sample/src/main/res/layout/activity_main.xml b/sample/src/main/res/layout/activity_main.xml
index 7f10e94..e6c9455 100644
--- a/sample/src/main/res/layout/activity_main.xml
+++ b/sample/src/main/res/layout/activity_main.xml
@@ -11,6 +11,12 @@
android:layout_height="wrap_content"
android:text="@string/prompt_dialog"/>
+
+