Как убедиться, что TabHost ссылается на правильные имена из main.xml, например -> android: id = "@android: id / tabs" - PullRequest
0 голосов
/ 26 марта 2012

Я слежу за учебниками по Android для макетов вкладок. (Я очень, очень плохо знаком с Android) У меня нет ошибок, но когда я запускаю его, я получаю исключение активности не найдено. ДДМС спрашивает, добавил ли я активность артистов в файл манифеста Android, который у меня есть.

в учебнике - http://developer.android.com/resources/tutorials/views/hello-tabwidget.html это говорит: «Обратите внимание, что элементы TabWidget и FrameLayout имеют идентификаторы tabs и tabcontent соответственно. Эти имена должны использоваться, чтобы TabHost мог получать ссылки на каждое из них. Он ожидает именно эти имена» *

Где я должен точно указать эти имена. Я знаю, что идентификатор должен быть связан, но я не знаю, где это сделать.

Ответы [ 2 ]

1 голос
/ 26 марта 2012

Я бы порекомендовал вам прекратить следовать этому примеру кода, так как он использует старый способ делать то, что вы хотите с помощью вкладок.

Я бы вместо этого рекомендовал начать читать о ViewPager.Я хотел бы начать с чтения http://android -developers.blogspot.com / 2011/08 / Horizontal-Swiping-с-viewpager.html

Вы хотите, чтобы получить AndroidБиблиотека поддержки / совместимости, а также демонстрационные примеры поддержки и посмотрите исходный код внутри.В частности, вы захотите обратить пристальное внимание на http://developer.android.com/resources/samples/Support4Demos/src/com/example/android/supportv4/app/FragmentTabsPager.html

С FragmentTabsPager вы будете использовать новейшие методы и использовать лучшее из обоих миров: вкладки, а также горизонтальное перелистывание.Google рекомендует использовать фрагменты для таких интерфейсов.Вы можете прочитать больше о фрагментах в http://developer.android.com/guide/topics/fundamentals/fragments.html

1 голос
/ 26 марта 2012

См .: http://developer.android.com/reference/android/widget/TabHost.TabSpec.html

В данном примере используется третий заданный параметр, Intent, который запускает Activity.Вы хотите № 1, я думаю.Поэтому вместо

.setContent(intent)

используйте:

.setContent(R.layout.exact_name)
...