我有一個非常基本的應用程序,我試圖在MainActivity上創建ListFragment。Android的片段錯誤
我不斷收到以下運行時錯誤:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.proto1.listfragment/com.proto1.listfragment.MainActivity}: android.view.InflateException: Binary XML file line #7: Error inflating class fragment
我有兩個班。
首先是MainActivity.java如下所示:
包com.proto1.listfragment;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import android.view.Menu;
public class MainActivity extends FragmentActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
第二個是與所述listfragment SectionsList類,如下所示:
package com.proto1.listfragment;
import android.os.Bundle;
import android.support.v4.app.ListFragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
public class SectionsList extends ListFragment {
//Create an array to hold the sections
String sections [] = new String []{
"Starters", "Mains", "Sides", "Desserts", "Drinks"
};
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
//Create array adapter to store list of menu sections
ArrayAdapter<String> adapter = new ArrayAdapter<String>(inflater.getContext(), android.R.layout.simple_list_item_1,sections);
//Set list adapter of fragment
setListAdapter(adapter);
return super.onCreateView(inflater, container, savedInstanceState);
}
}
我然後有稱爲activity_main一個XML佈局文件,如下所示:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:orientation = "horizontal"
android:layout_height="fill_parent" >
<fragment
android:name = "com.proto1.listfragment.MainActivity"
android:id="@+id/sectionFrag"
android:layout_width = "wrap_content"
android:layout_height = "fill_parent"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world"
tools:context=".MainActivity" />
我無法明白爲什麼會產生這個錯誤。有人可以澄清這個問題嗎?非常感謝!
,我想我明白你的意思!我現在就試試。 – Javacadabra
非常感謝,它完美的工作! – Javacadabra
另外我還沒有看看它,但在主題上如果我要動態地添加一個新的片段顯示菜單落在單擊部分將通過包括一個fragmentManager到代碼中完成? – Javacadabra