Как я могу проверить / прослушать изменение вкладки? - PullRequest
0 голосов
/ 10 декабря 2010

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

У меня есть действие (которое расширяет вкладку) с двумя вкладками. Мои вкладки не имеют разных намерений, они оба заполнены одним и тем же действием. В каждом из них у меня есть список, который я заполняю из базы данных.

Две вкладки - «доход» и «результат», и я пытался настроить его так, чтобы в зависимости от открытой вкладки выполнялся другой запрос и отображался другой список.

Отображаются правильные данные, но независимо от того, какая вкладка открывается первой, это единственная, в которой есть что-то, я понял, что это потому, что она не запрашивала базу данных (мой метод getBudgetAmount) и не отображала список (метод showBudgetCategories) когда вкладка изменилась и решила, что мне нужно будет проверить это изменение, но я не нашел способа сделать это, но это работает .. тогда я подумал, может быть, есть слушатель, которого я мог бы использовать вместо этого? Если бы кто-нибудь мог указать мне правильный путь, я был бы очень признателен!

Вот моя деятельность:

РЕДАКТИРОВАТЬ, форматирование продолжается, вам будет легче читать здесь - http://codeviewer.org/view/code:1501

1 Ответ

2 голосов
/ 10 декабря 2010

Пусть ваш класс Budget реализует OnTabChangeListener, затем в методе onCreate (),

добавить эту строку:

mTabHost.setOnTabChangedListener(this);

Тогда ваш класс Budget реализует onTabChanged:

public void onTabChanged(String tabName) {
        if(tabName.equals("tab1")) {
            //do something
        }
        else if(tabName.equals("tab2")) {
            //do something
        }
    }
...