передача данных между Activity (putExtra) Andoid Studio

В процессе создания приложения не раз приходится столкнуться с вопросом: как и где хранить данные. Ответ может быть разным в зависимости от контекста ситуации.

Рассмотрим метод putExtra.

При переходе между Activity используется Intent. В стандартном виде он выглядит так:

Intent intent = new Intent(MainActivity.this, Main2Activity.class); // создаем новое "намерение"
startActivity(intent);
finish(); //завершить MainActivity (если требуется)

Если дополнительно требуется передать переменные-примитивы, то можно сделать следующее:

Intent intent = new Intent(MainActivity.this, Main2Activity.class); // создаем новое "намерение"
//  формат putExtra следующий в скобках в кавычках сначала указываем "имя",
//          под которым будет храниться переменная; через запятую указываем имя переменной.
intent.putExtra("var_string", var_string);  //сохраняем переменную типа String
intent.putExtra("var_int", (Integer) var_int); //сохраняем переменную int 
intent.putExtra("var_bool", (Boolean) var_bool); //сохраняем переменную типа boolean
startActivity(intent);
finish(); //завершить MainActivity (если требуется)

В принимающем Activity необходимо описать переменные, в которые будут сохранены данные:

String var_string;
int var_int;
boolean var_bool;

И «извлечь» данные из Intent в эти переменные:

Intent intent = getIntent(); //принимает данные из намерения
var_string = intent.getStringExtra("var_string");  //принимаем переменную типа String
var_int= intent.getIntExtra("var_int", 0); //сохраняем переменную int, обязательно
//                                через запятую указываем значение по умолчанию
var_bool= intent.getBooleanExtra("var_bool", true);//сохраняем переменную boolean

 

You may also like...

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *