2012-12-15 85 views
0

我對主要活動的單個選項卡使用了不同的佈局文件。我改變了很多。我最初嘗試將tab2.xml的相對佈局設置爲wrap_content,但這並沒有幫助。我改變了包含文件的id,並在我的java代碼中調用了該文件,但沒有成功。我嘗試了最明顯的。現在,我不知道什麼是錯的。另外,我之前做過這個,並且它在tab2.xml的高度和寬度處於match_parent模式下工作良好。現在程序的應用程序。在調試控制檯中顯示的代碼行是「setContentView(R.layout.activity);」。所以,這絕對是佈局文件,代碼中沒有任何內容導致應用程序崩潰。不同佈局文件中的選項卡導致應用程序崩潰

這裏的主要活動的XML代碼: 「activity.xml」

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
tools:context=".CleanUp" > 

<TabHost 
    android:id="@android:id/tabhost" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentTop="true" > 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:orientation="vertical" > 

     <TabWidget 
      android:id="@android:id/tabs" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:background="@style/MyTheme" > 

     </TabWidget> 

     <FrameLayout 
      android:id="@android:id/tabcontent" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" > 


      <include layout="@layout/tab2"/>    


     </FrameLayout> 

    </LinearLayout> 
</TabHost> 

</RelativeLayout> 

這裏的tab2.xml:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
       android:id="@+id/tab2" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       tools:context=".CleanUp" > 

<EditText 
    android:id="@+id/editText1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentTop="true" 
    android:layout_toRightOf="@+id/textView1" 
    android:layout_marginTop="40dp" 
    android:layout_marginRight="20dp" 
    android:inputType="text" 
    android:ems="10" /> 

<TextView 
    android:id="@+id/textView1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignBaseline="@+id/editText1" 
    android:layout_alignBottom="@+id/editText1" 
    android:layout_alignParentLeft="true" 
    android:layout_marginLeft="20dp" 
    android:layout_marginRight="10dp" 
    android:text="Custom extension:" 
    android:textAppearance="?android:attr/textAppearanceMedium" /> 

<Button 
    android:id="@+id/button2" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_centerHorizontal="true" 
    android:layout_centerVertical="true" 
    android:text="Clean" /> 

</RelativeLayout> 

下面是我用在我的Activity類標籤的代碼:

TabHost tabHost = (TabHost) findViewById(android.R.id.tabhost); 
    tabHost.setup(); 
    TabSpec tab1 = tabHost.newTabSpec("Clean Up"); 
    tab1.setIndicator("Clean up"); 
    tab1.setContent(R.id.tab2); 
    tabHost.addTab(tab1); 

logcat的錯誤

http://pastebin.com/DcXGdCuF

+2

安置自己的logcat錯誤,請。 – Sam

+0

我已將pastebin鏈接發佈到日誌。 –

回答

2

這logcat的行:

Caused by: android.content.res.Resources$NotFoundException: Resource is not a Drawable (color or path): TypedValue{t=0x1/d=0x7f050002 a=-1 r=0x7f050002} 

讓我相信你的錯誤是在這條線:

android:background="@style/MyTheme" 

您不能使用@style/X屬性作爲背景。您必須通過它可抽拉:

android:background="@drawable/MyDrawable" 

或將其作爲一種風格,正確:

style="@style/MyTheme" 
+0

謝謝!這是一個愚蠢的錯誤。我的styles.xml有一些錯誤,你指出的那一行顯然是錯誤的。 –