2017-02-07 1 views
-2

Я использую Retrofit2. Принимаю дату ввода от пользователя в первом действии и когда пользователь нажимает кнопку «ОК» в первом действии, а затем отображает список, из которого он выбирает то, что он хочет сделать для второго действия. Мне нужно передать эту дату в третью активность, которая будет отображаться, когда пользователь выбирает элемент из списка.Возможно ли передавать данные в один вид деятельности, но переключиться на другую деятельность

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

Как отправить данные от первой до третьей деятельности. Можно ли использовать несколько намерений при одинаковой активности?

+0

_Is возможность передавать данные в одной деятельности, но переключиться на другой Activity_ Пытались ли вы это? –

+0

Ну, вы можете перейти с 1-го на 2-й, затем со 2-го на 3-й. –

+0

, но это будет куча. Там должно быть abetter решение – SherLocked

ответ

0

Существует много способов.

  1. Использование намерения экстра - от деятельности A передавать данные активности B и тех же данных, вы можете перейти к деятельности C
  2. Использование общего предпочтения - сохранить данные предпочтения и получить его из любой точки
  3. Использование базы данных - сохранение данных в базе данных и их использование в любом месте
  4. Использование открытого статического объекта - статический объект init и его использование в любом месте проекта
0

Вы можете сделать это различными способами.

  1. Передача данных с 1-го по 2-й степени. Затем со 2-го по 3-е действие.

  2. Вы можете использовать SharedPreference для сохранения значения в 1-м действии и получения значения в 3-й операции.

Вот пример для SharedPreference:

SharedPreferences pref; 

// Editor for Shared preferences 
SharedPreferences.Editor editor; 

// Shared pref mode 
int PRIVATE_MODE = 0; 

// Sharedpref file name 
private static final String PREF_NAME = "app_data_preference"; 
pref = context.getSharedPreferences(PREF_NAME, PRIVATE_MODE); 
editor = pref.edit(); 


editor.putString(DATE, "Your Date"); //DATE is a string 
editor.apply(); //Done. Your date has been saved 



//Now to retrieve the data back, use this: 

return pref.getString(DATE, ""); 
Смежные вопросы