Android: TabHost How To: установить новый контент в существующих вкладках на кнопку меню? - PullRequest
1 голос
/ 21 мая 2010

Я недавно начал программировать на Android и работал над моей первой программой, которая отображает исторический текстовый документ, разделенный на вкладки через TabHost. Я ограничил свою программу одним видом деятельности и просто использовал setContent в моем TabSpec для переключения между различными представлениями XML.

В документе есть как неотредактированные, так и исправленные версии текста, для которых я построил текстовые представления, чтобы приспособить их. Я хотел реализовать стандартное меню, чтобы иметь кнопки для «просмотра исправленных» и «просмотра оригинала» и переключения содержимого вкладок, которые имеют изменения (без изменения вкладок или их индикаторов).

Я читал об API TabHost, и нет способа редактировать существующее содержимое вкладки с помощью setContent () из TabSpec; и AFAIK TabWidget влияет только на фактические вкладки, а не на содержимое, которое отображается при нажатии на них.

Я думал о создании нового класса, который расширил бы TabHost и super () всеми оригинальными методами, включая еще один, который обновил список mTabSpec.

У меня вопрос, как мне обновить представление frameLayout конкретной вкладки для отображения содержимого, которое я указываю?

1 Ответ

0 голосов
/ 21 мая 2010

Я бы указал вам в 2 возможных направлениях. Поскольку уже немного поздно, я не буду вдаваться в подробности, и если у вас нет ответа завтра, я дам вам еще кое-что: Вы можете использовать класс ViewSwitcher, который отлично подходит для такого рода вещей, когда вам нужно иметь дело с двумя представлениями. Вы можете найти хороший учебник здесь . Или вы можете создать 2 вида друг над другом, и когда вы нажимаете кнопку, чтобы перейти от оригинала к исправлению, просто измените видимость атрибута с VISIBLE на GONE и наоборот для другого вида. Но это менее приятное кодирование, чем предыдущий способ, хотя гораздо проще кодировать (приятно проверять ваши взгляды)

Надеюсь, это поможет,

Sephy

...