Преглед изворни кода

PDFTool(Android) - 输入弹窗新增输入空内容确认

liuxiaolong пре 1 година
родитељ
комит
9cb3b780ac

+ 20 - 2
ComPDFKit_Tools/src/main/java/com/compdfkit/tools/common/utils/dialog/CEditDialog.java

@@ -32,9 +32,11 @@ import com.compdfkit.tools.common.utils.viewutils.CViewUtils;
 
 public class CEditDialog extends DialogFragment {
 
-    private static final String EXTRA_EDIT_TEXT_INFO = "extra_edit_text_info";
+    public static final String EXTRA_EDIT_TEXT_INFO = "extra_edit_text_info";
 
-    private static final String EXTRA_TITLE = "extra_dialog_title";
+    public static final String EXTRA_TITLE = "extra_dialog_title";
+
+    public static final String EXTRA_ENABLE_INPUT_EMPTY_CONTENT = "extra_enable_input_empty_content";
 
     private AppCompatTextView tvTitle;
 
@@ -48,6 +50,8 @@ public class CEditDialog extends DialogFragment {
 
     private int hintResId;
 
+    private boolean enableInputEmptyContent = false;
+
     public static CEditDialog newInstance(String title, String editTextInfo) {
         CEditDialog dialog = new CEditDialog();
         Bundle bundle = new Bundle();
@@ -57,6 +61,12 @@ public class CEditDialog extends DialogFragment {
         return dialog;
     }
 
+    public static CEditDialog newInstance(Bundle bundle) {
+        CEditDialog dialog = new CEditDialog();
+        dialog.setArguments(bundle);
+        return dialog;
+    }
+
     @Override
     public void onCreate(@Nullable Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
@@ -88,6 +98,7 @@ public class CEditDialog extends DialogFragment {
         if (getArguments() != null) {
             String defaultTitle = getArguments().getString(EXTRA_EDIT_TEXT_INFO);
             String title = getArguments().getString(EXTRA_TITLE, "");
+            boolean enableInputEmptyContent = getArguments().getBoolean(EXTRA_ENABLE_INPUT_EMPTY_CONTENT, false);
             editText.setText(defaultTitle);
             editText.setSelection(defaultTitle.length());
             tvTitle.setText(title);
@@ -98,6 +109,13 @@ public class CEditDialog extends DialogFragment {
         CViewUtils.showKeyboard(editText);
         btnCancel.setOnClickListener(v -> dismiss());
         btnAdd.setOnClickListener(v -> {
+            if (enableInputEmptyContent){
+                String title = editText.getText().toString().trim();
+                if (editListener != null) {
+                    editListener.edit(title);
+                }
+                return;
+            }
             if (!TextUtils.isEmpty(editText.getText())) {
                 String title = editText.getText().toString().trim();
                 if (editListener != null) {

+ 6 - 1
ComPDFKit_Tools/src/main/java/com/compdfkit/tools/viewer/pdfsearch/CSearchResultDialogFragment.java

@@ -2,6 +2,7 @@ package com.compdfkit.tools.viewer.pdfsearch;
 
 import android.content.Context;
 import android.content.DialogInterface;
+import android.os.Bundle;
 import android.util.Log;
 import android.util.SparseArray;
 import android.view.View;
@@ -93,7 +94,11 @@ public class CSearchResultDialogFragment extends CBasicBottomSheetDialogFragment
     }
 
     void createDialog() {
-        CEditDialog editDialog = CEditDialog.newInstance(getString(R.string.tools_replace_all_with), "");
+        Bundle bundle = new Bundle();
+        bundle.putString(CEditDialog.EXTRA_TITLE, getString(R.string.tools_replace_all_with));
+        bundle.putString(CEditDialog.EXTRA_EDIT_TEXT_INFO, "");
+        bundle.putBoolean(CEditDialog.EXTRA_ENABLE_INPUT_EMPTY_CONTENT, true);
+        CEditDialog editDialog = CEditDialog.newInstance(bundle);
         editDialog.setHint(R.string.tools_replace_hint);
         editDialog.setEditListener(content -> {
             editDialog.dismiss();