Все, что я прочитал о намерениях, говорит об использовании их для ввода данных или для запуска одного действия из другой деятельности. Я хочу извлечь данные из уже запущенного Activity.Вытягивание данных из одной операции Tab в другую
Учебное пособие по макету в http://developer.android.com/resources/tutorials/views/hello-tabwidget.html иллюстрирует, что я хочу делать. (Мое приложение выполняет некоторые инженерные расчеты вместо этого, но код учебника обеспечивает хорошую аналогию с моим приложением.) Учебник создает приложение с тремя вкладками, и каждая вкладка имеет отдельное действие.
Чтобы расширить пример в учебнике, предположим, что я выбираю исполнителя на вкладке/мероприятии художников. Я хочу, чтобы можно было выбрать вкладку/мероприятие «Альбомы» и показать все альбомы с участием этого исполнителя.
Мне кажется, что мне нужно использовать намерение для этого. Все обучающие материалы, которые я нашел, предполагают, что я бы создал кнопку «Просмотреть альбомы» на вкладке/мероприятии «Художники», и нажатие кнопки выполняло намерение, которое запускает действие «Альбомы» и передает имя_имя.
Я НЕ хочу создавать эту кнопку. Недвижимость на макете «Художники» драгоценна, и у меня очень хорошая вкладка «Альбомы». И активность HelloTabWidget уже содержит намерение создать вкладку «Альбомы».
Кроме того, пользователь захочет пропустить назад и вперед между альбомом и исполнителем, чтобы изменить выбор исполнителя, а вкладки - отличный способ сделать это. Нет необходимости усложнять интерфейс с помощью другой кнопки.
Итак, как я могу активировать действие Альбомы PULL artistName из активности Художников, когда выбрана вкладка «Альбомы» (или отображается макет Альбомы), вместо того, чтобы активировать деятельность «СТАРТ-альбомы» и «НАЗНАЧИТЬ имя_источника»?
Эквиваленты я могу думать о других мирах программирования:
Глобальные переменные. Не рекомендуется в Android devt, верно? И если они существуют, что они называли?
Геттер, такой как
artistName = Artists.getArtistName();
. У меня такое чувство, что все не так просто.Запись и чтение из файла, то есть массовой памяти или энергонезависимой памяти. Мне не нужно, чтобы значение artistName было постоянным. Он будет сброшен до нуля каждый раз, когда пользователь запускает приложение.
Итак, как это делается в Android-мире? Использую ли я намерение - и если да, то как?