Передача нескольких строковых значений в другое действие - PullRequest
0 голосов
/ 08 мая 2019

Я сейчас изучаю Android.Я хотел бы отправить несколько строковых значений из одного занятия в другое после нажатия кнопки.Я могу отправить одно значение с использованием Intent, но как насчет 3 разных значений?Можно ли сделать это таким же образом или я должен поместить их в список или что-то?

Intent a1 = new Intent(SecondActivity.this, MainActivity.class);
Intent a2 = new Intent(SecondActivity.this, MainActivity.class);
Intent b = new Intent(SecondActivity.this, MainActivity.class);

a1.putExtra("KEY1", String.valueOf(value1));
a2.putExtra("KEY2", String.valueOf(value2));
b.putExtra("KEY3", String.valueOf(value3));

Intent add_activity = new Intent(getApplicationContext(), 
MainActivity.class);
startActivity(add_activity);

Ответы [ 2 ]

1 голос
/ 08 мая 2019

Вы помещаете свои три строки в три разных ссылки, конечно, у вас должно быть одно значение во втором действии, определяемое, какое действие будет запускаться

Intent add_activity = new Intent(getApplicationContext(), MainActivity.class);
            add_activity.putExtra("KEY1", String.valueOf(value1));
            add_activity.putExtra("KEY2", String.valueOf(value2));
            add_activity.putExtra("KEY3", String.valueOf(value3));
            startActivity(add_activity);
1 голос
/ 08 мая 2019

Вам не нужно создавать несколько намерений для этого. Используйте только одно намерение, как показано ниже

Intent add_activity = new Intent(SecondActivity.this, MainActivity.class);

add_activity.putExtra("KEY1", String.valueOf(value1));
add_activity.putExtra("KEY2", String.valueOf(value2));
add_activity.putExtra("KEY3", String.valueOf(value3));

startActivity(add_activity);

Если вы хотите передать их в список, вы можете сделать это следующим образом

ArrayList<String> myList = new ArrayList<String>();
myList.add(String.valueOf(value1));
...
...
add_activity.putExtra("mylist", myList);
startActivity(add_activity);

Вы можете получить его в другой деятельности, как показано ниже

ArrayList<String> myList = (ArrayList<String>) getIntent().getSerializableExtra("mylist");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...