Ошибка инфляции XML
Я получаю эту очень странную ошибку при попытке запустить мое приложение. Из-за моих вкладок я думаю. Вот ошибка:
11-18 14:45:27.093: E/AndroidRuntime(680): FATAL EXCEPTION: main
11-18 14:45:27.093: E/AndroidRuntime(680): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: android.view.InflateException: Binary XML file line #14: Error inflating class <unknown>
11-18 14:45:27.093: E/AndroidRuntime(680): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
11-18 14:45:27.093: E/AndroidRuntime(680): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
11-18 14:45:27.093: E/AndroidRuntime(680): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
11-18 14:45:27.093: E/AndroidRuntime(680): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
11-18 14:45:27.093: E/AndroidRuntime(680): at android.os.Handler.dispatchMessage(Handler.java:99)
11-18 14:45:27.093: E/AndroidRuntime(680): at android.os.Looper.loop(Looper.java:123)
11-18 14:45:27.093: E/AndroidRuntime(680): at android.app.ActivityThread.main(ActivityThread.java:4627)
11-18 14:45:27.093: E/AndroidRuntime(680): at java.lang.reflect.Method.invokeNative(Native Method)
11-18 14:45:27.093: E/AndroidRuntime(680): at java.lang.reflect.Method.invoke(Method.java:521)
11-18 14:45:27.093: E/AndroidRuntime(680): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
11-18 14:45:27.093: E/AndroidRuntime(680): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
11-18 14:45:27.093: E/AndroidRuntime(680): at dalvik.system.NativeStart.main(Native Method)
11-18 14:45:27.093: E/AndroidRuntime(680): Caused by: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.laytproducts.bytes.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.laytproducts.bytes/com.la
Вот мой XML-файл:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:background="#ccc" >
<TextView
android:id="@+id/titleTV"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="5dp"
android:layout_marginLeft="10dp"
android:layout_marginTop="5dp"
android:text="Bytes"
android:textSize="20dp" />
</LinearLayout>
<TabHost
android:id="@android:id/tabhost"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/linearLayout1" >
<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" >
</TabWidget>
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:id="@+id/tab1"
android:layout_width="match_parent"
android:layout_height="match_parent" >
</LinearLayout>
<LinearLayout
android:id="@+id/tab2"
android:layout_width="match_parent"
android:layout_height="match_parent" >
</LinearLayout>
<LinearLayout
android:id="@+id/tab3"
android:layout_width="match_parent"
android:layout_height="match_parent" >
</LinearLayout>
</FrameLayout>
</LinearLayout>
</TabHost>
</RelativeLayout>
И мой метод OnCreate:
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tabHost = (TabHost)findViewById(android.R.id.tabhost);
tabHost.setup();
TabSpec ts = tabHost.newTabSpec("Home").setIndicator("Home").setContent(new Intent().setClass(this,MainActivity.class));
tabHost.addTab(ts);
ts = tabHost.newTabSpec("Quests").setIndicator("Quests").setContent(new Intent().setClass(this,Jobs.class));
tabHost.addTab(ts);
tabHost.setCurrentTab(0);
Я никогда не видел эту ошибку раньше. По какой-то причине в моем XML-файле возникают проблемы с надуванием?
1 ответ
Вы создаете бесконечный цикл, пытаясь загрузить:
MainActivity с MainActivity на вкладке, с MainActivity на вкладке, с MainActivity на вкладке, с MainActivity на вкладке, с MainActivity на вкладке, с MainActivity на вкладке, с MainActivity на вкладке, с MainActivity на вкладке, с MainActivity во вкладке,
Это неприятная линия:
TabSpec ts = tabHost.newTabSpec("Home").setIndicator("Home").setContent(new Intent().setClass(this,MainActivity.class));
У меня такое чувство, что ваш полный LogCat показывает, что основной причиной является исключение StackruException...
В любом случае вам нужно создать новый класс, назовите его "Home", где MainActivity загружает вкладки, а Home - ваш экран по умолчанию.