Вопрос

Я пытаюсь настроить несколько вкладок для моего приложения для Android, но я застрял.

Я не могу найти способ общаться между вкладками ..

У меня есть 2 вкладки.


| Поиск | Результат |

Вкладка «Поиск» просто показывает кнопку «Textedit» и «Поиск». Нажатие кнопки поиска должно заставить мое приложение измениться на вкладку результата и отобразить результат.

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

TabHost host=getTabHost();  

host.addTab(host.newTabSpec("one")  
   .setIndicator("Search")  
   .setContent(new Intent(this, SearchTabActivity.class)));  
host.addTab(host.newTabSpec("Result")  
   .setIndicator("Android")  
   .setContent(new Intent(this, ResultTabActivity.class)));  

Теперь я не могу найти способ для SearchTabactivity отобразить результат -контакт и изменить его представление ...

Я с нетерпением жду любого чаевого.

Это было полезно?

Решение

Ты определенно Хотите пересмотреть использование действий в качестве содержания ваших вкладок. Более стандартный подход заключается в использовании одной деятельности, которая использует вкладки, чтобы показать часть макета только при выборе конкретной вкладки.

Документация Android имеет отличный проработанный пример, проверьте Здравствуйте, Tabwidget.

Альтернатива

Если по какой -то причине вам нужно использовать действия, вы можете передавать информацию между ними, добавив значения в пакет дополнительных данных в рамках намерения, который вы используете, чтобы открыть каждое действие, либо расширив Заявление учебный класс.

Расширяя класс приложений (и реализуя его как синглтон), вы получаете объект, который будет существовать всякий раз, когда существует какой -либо из ваших компонентов приложения, предоставляя централизованное место для хранения и передачи данных комплекса между компонентами приложения.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top