Кто-нибудь знает, что означает эта ошибка для вкладок Android?

Я пытаюсь опробовать учебник онлайн и хотел поместить вкладку в макет xml. Я изменил расширение с Activity на TabActivity. В представлении дизайна макета xml у меня есть следующее.

Ошибка во время процесса постинфляции: TabHost требует TabWidget с идентификатором «android: id/tabs». Найдено представление с идентификатором «вкладки»: «com.android.layoutlib.bridge.MockView». Не удалось найти следующие классы:

Я искал решение, но ни одно из них не было исправлено, кроме того, что я нашел его на другом языке. Пробовал пользоваться переводчиком в гугле, но не очень помогло.

Кому-нибудь удалось получить функцию вкладок.

Я использую Android 2.2 Api и разрабатываю с помощью IDE eclipse.


person LittleFunny    schedule 10.02.2011    source источник


Ответы (5)


Известная ошибка http://code.google.com/p/android/issues/detail?id=13092

Пользователь предложил переключить цель сборки на 1.6, и проблема исчезла. Очевидно временное решение.

person coreSOLO    schedule 16.02.2011

Вам нужен такой макет:

<?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@android:id/tabhost"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <LinearLayout
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:padding="5dp">
        <TabWidget
            android:id="@android:id/tabs"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" />
        <FrameLayout
            android:id="@android:id/tabcontent"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:padding="5dp" />
    </LinearLayout>
</TabHost>

Дополнительные сведения см. в руководстве по макету вкладок.

person Ian G. Clifton    schedule 11.02.2011
comment
Вы видите эту проблему на реальном устройстве или только в предварительном просмотре макета? - person Ian G. Clifton; 12.02.2011

У вас есть TabWidget с идентификатором android:id/tabs, как указано в сообщении об ошибке?

person Cheryl Simon    schedule 10.02.2011
comment
Да у меня в макете xml . - person LittleFunny; 11.02.2011
comment
Я взглянул на сгенерированный файл ресурсов в классе id... Я видел идентификатор вкладки и содержимое вкладки, но не идентификатор для виджета вкладки. - person LittleFunny; 11.02.2011

Переключитесь на Android Target 3.0 или 3.1. Вы можете найти этот раскрывающийся список в правом верхнем углу.

person Jiju Induchoodan    schedule 11.10.2011

Я была такая же проблема. Обходной путь подробно описан по этой ссылке:

Комментарий 63 от [email protected], 5 мая 2011 г.

Как указано выше, быстрое исправление: просто измените цель API (вверху слева от графического представления XML) на 3.0, и вы увидите это.

person alex    schedule 12.07.2011