Как сохранить несколько данных EditText с помощью кнопки и отобразить их в другой операции с плавающей кнопкой действия? - PullRequest
0 голосов
/ 30 мая 2019

У меня есть один текст редактирования в моем приложении, я хочу сохранить текст, который я написал в этом тексте редактирования, нажав кнопку, а затем отобразить его в другом действии, но только нажав кнопку плавающего действия.И после того, как я нажму кнопку «Сохранить», текст редактирования должен быть пустым, чтобы я мог написать что-то еще и снова сохранить новый текст.

Я пробовал использовать putextra, но я могу передать только один текст редактирования и отобразить его только одной кнопкой,Я полагаю, что при щелчке по плавающей кнопке отображается пустое действие, потому что это новое намерение, и он ничего не пропускает.

1 Ответ

0 голосов
/ 30 мая 2019

Если вы читаете / записываете несколько значений из EditText, вы можете использовать SharedPreferences, чтобы сохранить эти значения в вашем Activity, где находится EditText, а затем прочитать все значения из SharedPreferences в вашем 2nd Activity. Это позволит вам избежать создания базы данных для вашего приложения, так как это немного накладные расходы.

Так как из EditText будут поступать только данные String, я бы, вероятно, пошел с Set - но это не допустит дублирования. Вы можете просто хранить каждую строку под другим ключом и использовать вместо этого метод getAll (). Что-то вроде ниже в вашем onClickListener для вашего FAB будет сохранять данные:

SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPref.edit();
editor.putString("UNIQUE_KEY_HERE", "EDIT_TEXT_VALUE_HERE");
editor.commit();

А затем при чтении из SharedPreferences во втором занятии:

SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);
String editTextValue = sharedPref.getString("UNIQUE_KEY_HERE", " "); // " " is a default value

Там уже много документации по SharedPreferences в любом случае , включая getAll() метод

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...