TabHost и вызовите ту же деятельность - PullRequest
0 голосов
/ 03 апреля 2012

Я новичок в фреймворке Android и мне интересно, можно ли вызвать ту же активность из TabHost?У меня есть 3 вкладки, и каждая вкладка заполняет список, но разные значения.Я хочу отфильтровать список во вкладках.Данные каждой вкладки собираются из списка, поэтому я не хочу делать 3 разных действия.Это возможно с классами TabHost и TabActivity?

Заранее спасибо!

Br, Питер

Ответы [ 2 ]

0 голосов
/ 03 апреля 2012

Вы должны иметь возможность указать одно и то же действие для каждой вкладки.Чтобы это было отфильтровано, я просто отправил бы значение Extra для намерения.

Примерно так:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.tab_host_layout);

    TabHost tabHost = getTabHost();

    Intent intent1 = new Intent(this, MyActivity.class);
    intent1.putExtra("filter", 1);
    tabHost.addTab(tabHost.newTabSpec("tab1")
            .setIndicator("Tab1")
            .setContent(intent1));

    Intent intent2 = new Intent(this, MyActivity.class);
    intent2.putExtra("filter", 2);
    tabHost.addTab(tabHost.newTabSpec("tab2")
            .setIndicator("Tab2")
            .setContent(intent2));

}
0 голосов
/ 03 апреля 2012

Пример использования вкладок Android с представлениями вместо операций?

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

...