Как отправить данные из основной деятельности в другую деятельность? - PullRequest
0 голосов
/ 26 августа 2011

Как отправить более 1 данных в комплекте?

Если только один:

String status = txtStatus.getText().toString();
String txtstatus = String.valueOf(status);

Bundle bundle = new Bundle();
bundle.putString("status", txtstatus);

a.putExtras(bundle);
startActivityForResult(a, 0);

если более 1 данных ??

String status = txtStatus.getText().toString();
String txtstatus = String.valueOf(status);

String confirm = txtConfirm.getText().toString();
String txtconfirm = String.valueOf(confirm);

что дальше ??

Ответы [ 5 ]

1 голос
/ 26 августа 2011

просто продолжайте добавлять bundle по мере добавления bundle.putString("status", txtconfirm );

, и когда вы закончите, установите этот пакет в намерение: a.putExtras(bundle);

0 голосов
/ 02 ноября 2014

Процесс сериализации / разбивки пользовательских объектов, присоединения к пакету с ключами и отмены всего этого на другом конце становится утомительным, когда у вас много данных или / и когда данные должны служить различным целям / функциям взапустил Activity и т. д.

Вы можете проверить эту библиотеку (https://github.com/noxiouswinter/gnlib_android/wiki#gnlauncher) Я написал, чтобы попытаться решить эту проблему.

GNLauncher выполняет отправку объектов / данных в Activity из другого Activityи т. д. так же просто, как вызов функции в Деятельности с необходимыми данными в качестве параметров. Он вводит безопасность типов и устраняет все трудности, связанные с сериализацией, присоединением к цели с использованием строковых ключей и отменой того же на другом конце.

Вы также можете напрямую запускать различные функции в Деятельности, выбирая способ запуска с данными.

0 голосов
/ 26 августа 2011

для нескольких данных

String status = txtStatus.getText().toString();
 String txtstatus = String.valueOf(status);

 String confirm = txtConfirm.getText().toString();
 String txtconfirm = String.valueOf(confirm);

Bundle bundle = new Bundle();
bundle.putString("status", txtstatus);
bundle.putString("confirm",txtconfirm);

a.putExtras(bundle);
startActivityForResult(a, 0);
0 голосов
/ 26 августа 2011

Просто поместите вторую строку с помощью bundle.putString (), убедившись, что вы используете для нее уникальное имя ключа.

0 голосов
/ 26 августа 2011

Если я понял вопрос, это должно быть хорошо:

Bundle bundle = new Bundle();
bundle.putString("status", txtstatus);
bundle.putString("confirm", txtconfirm);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...