| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Android > activityForResult Intent |
| Автор: Burka 7.10.2014, 13:08 | ||||
Привет, у меня такой вопрос:
Могу ли я в onActivityResult извлеч из Intent "somedata"? Такой код у меня возвращает 0. Если так нельзя, то есть ли какой-нибудь другой способ?
|
| Автор: Felan 7.10.2014, 17:03 |
| Это интент на открытие активити. Что бы onActivityResult получить данные из интрента, перед закрытием активити надо вызывать метод setResult и передать ему заполненный интент. В принципе можно и этот запмнить и передать. Но вообще, это не очень хороший способ взаимодействия внутри приложения. Лучше рассмотреть выделенные классы для хранения данных. |
| Автор: Burka 8.10.2014, 12:07 |
| Felan, А можно поподробнее про выделенные классы? Активити вызывается не мое, поэтому я не могу вызывать setResult, но надо как то передавать данные что бы была возможность многократного вызова. |
| Автор: Felan 8.10.2014, 17:53 |
| Да я не знаю, что тут подробнее. Просто делаешь класс контейнер, который будет хранить твои данные и не будет иметь отношение к UI. Хочешь объект делаешь, хочешь статический класс. У которого поля будут нужных тебе значений. Активити пишет туда данные, перед запуском другой активити, потом забирает. Вот если активити не твоя... Сходу ниче не скажу. Поищи, какие-нибудь коды, которые возвращаются или без изменений, или может эта активити все-таки что-то возвращает. Елси не нарямую получится, то может получится найти какой-ниудь id к которому можно удет привязать "словарь", что бы при возврате по этому id получить ранее сохраненное. |
| Автор: Dapo 11.10.2014, 05:57 |
| я чего-то недопонял? Зачем передавать в чужое активити свои данные чтобы потом получить их же в своем активити? Если чужое активити что-то отдает на свой резалт, то оно свою посылку создает не так-ли? Если данные нужно хранить для последующего использования, можно обойтись простым синглтоном |