2011-01-06 65 views
4

Possible Duplicate:
Anyone know what this error mean for android tabs?Tabhost教程破了?

我一直在試圖做SDK中的TabHost教程,但由於某種原因,似乎中斷。在步驟4我複製並粘貼xml代碼,我收到一個錯誤,阻止它正確膨脹。錯誤是:

Error in an XML file: aborting build. 

這是在xml文件的圖形佈局。

Error during post inflation process: 
TabHost requires a TabWidget with id "android:id/tabs", 
View found with id "tabs" is 'com.android.layoutlib.bridge.MockView' 

xml文件本身就有這個。

<?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> 

我做錯了什麼?

+0

你正在運行它作爲一個測試項目嗎?它看起來像是由`com.android.layoutlib.bridge.MockView`覆蓋的TabView類。我從來沒有見過這個錯誤。 – Falmarri 2011-01-06 21:08:33

+0

沒有測試項目。我甚至不知道com.android.layoutlib.bridge.MockView在哪裏。希望我做過。 – 2011-01-06 23:15:46

+0

[here](http://stackoverflow.com/questions/4963773/anyone-know-what-this-error-mean-for-android-tabs/5017740#5017740)是同一個問題的答案。 – ercu 2011-05-06 08:57:05

回答

2

使用該模板:

<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:id="@+id/tab" android:orientation="vertical"  android:layout_width="fill_parent" android:layout_height="fill_parent"> 
     <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"> 

      <LinearLayout android:id="@+id/tab1" android:layout_width="fill_parent" 
      android:layout_height="fill_parent" android:orientation="vertical"/> 

      <LinearLayout android:id="@+id/tab2" android:layout_width="fill_parent" 
      android:layout_height="fill_parent" android:orientation="vertical"/> 

</FrameLayout> 
</LinearLayout> 
</TabHost> 
2

見第5步,你的活動必須擴展TabActivity,不活動

Now open HelloTabWidget.java and make it extend TabActivity:

0

您可以使用這裏找到更新的渲染庫:Android Tools

只需將在\layoutlib\[platform version]中找到的目錄解壓到\[sdk dir]\platforms\[platform version]並讓它覆蓋layoutlib即可。

0

在圖形佈局本身切換到android目標3.0或3.1。你可以在右上角找到下拉列表