我有一个非常基本的应用程序,我试图在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