android.view.InflateException:二进制XML文件行#26:膨胀类android.widget.ListView时出错
我必须在三个活动中设置相同的导航抽屉。因此,为了减少代码,我使用了BaseActivity 我得到了一个错误,它导致类android.widget.ListView膨胀 Stacktrace:android.view.InflateException:二进制XML文件行#26:膨胀类android.widget.ListView时出错,android,listview,Android,Listview,我必须在三个活动中设置相同的导航抽屉。因此,为了减少代码,我使用了BaseActivity 我得到了一个错误,它导致类android.widget.ListView膨胀 Stacktrace: 09-10 02:03:13.988 14284-14284/? E/AndroidRuntime﹕ FATAL EXCEPTION: main java.lang.RuntimeException: Unable to start activity ComponentInfo{com.stev
09-10 02:03:13.988 14284-14284/? E/AndroidRuntime﹕ FATAL EXCEPTION: main
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.steve.database/com.steve.database.MainActivity}: android.view.InflateException: Binary XML file line #26: Error inflating class android.widget.ListView
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2211)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261)
at android.app.ActivityThread.access$600(ActivityThread.java:141)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5103)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
at dalvik.system.NativeStart.main(Native Method)
Caused by: android.view.InflateException: Binary XML file line #26: Error inflating class android.widget.ListView
at android.view.LayoutInflater.createView(LayoutInflater.java:620)
at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
at android.view.LayoutInflater.onCreateView(LayoutInflater.java:669)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:694)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:755)
at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
at android.view.LayoutInflater.inflate(LayoutInflater.java:353)
at com.steve.database.BaseActivity.onCreate(BaseActivity.java:72)
at com.steve.database.MainActivity.onCreate(MainActivity.java:30)
at android.app.Activity.performCreate(Activity.java:5133)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2175)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261)
at android.app.ActivityThread.access$600(ActivityThread.java:141)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5103)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Constructor.constructNative(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:417)
at android.view.LayoutInflater.createView(LayoutInflater.java:594)
at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
at android.view.LayoutInflater.onCreateView(LayoutInflater.java:669)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:694)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:755)
at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
at android.view.LayoutInflater.inflate(LayoutInflater.java:353)
at com.steve.database.BaseActivity.onCreate(BaseActivity.java:72)
at com.steve.database.MainActivity.onCreate(MainActivity.java:30)
at android.app.Activity.performCreate(Activity.java:5133)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2175)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261)
at android.app.ActivityThread.access$600(ActivityThread.java:141)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5103)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
at dalvik.system.NativeStart.main(Native Method)
Caused by: android.content.res.Resources$NotFoundException: Resource is not a Drawable (color or path): TypedValue{t=0x1/d=0x7f0b0000 a=-1 r=0x7f0b0000}
at android.content.res.Resources.loadDrawable(Resources.java:2063)
at android.content.res.TypedArray.getDrawable(TypedArray.java:601)
at android.view.View.<init>(View.java:3364)
at android.view.ViewGroup.<init>(ViewGroup.java:459)
at android.widget.AdapterView.<init>(AdapterView.java:235)
at android.widget.AbsListView.<init>(AbsListView.java:766)
at android.widget.ListView.<init>(ListView.java:144)
at android.widget.ListView.<init>(ListView.java:140)
at java.lang.reflect.Constructor.constructNative(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:417)
at android.view.LayoutInflater.createView(LayoutInflater.java:594)
at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
at android.view.LayoutInflater.onCreateView(LayoutInflater.java:669)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:694)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:755)
at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
at android.view.LayoutInflater.inflate(LayoutInflater.java:353)
at com.steve.database.BaseActivity.onCreate(BaseActivity.java:72)
at com.steve.database.MainActivity.onCreate(MainActivity.java:30)
at android.app.Activity.performCreate(Activity.java:5133)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2175)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261)
at android.app.ActivityThread.access$600(ActivityThread.java:141)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5103)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
at dalvik.system.NativeStart.main(Native Method)
private ListView mDrawerList;
private DrawerLayout mDrawerLayout;
private ArrayList<Chapter> chapterArray;
ChapterListAdapter adapter;
SqliteDbHelper dbHelper;
dbHelper = new SqliteDbHelper(this);
dbHelper.openDataBase();
LayoutInflater mInflater = LayoutInflater.from(this);
View mCustomView = mInflater.inflate(R.layout.custom_actionbar, null); ---->Error line
mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
mDrawerList = (ListView) findViewById(R.id.list_menu);
chapterArray=new ArrayList<Chapter>();
chapterArray=dbHelper.getChapterDetails();
adapter = new ChapterListAdapter(this,chapterArray);
mDrawerList.setAdapter(adapter);
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:background="#5467F7">
<TextView
android:id="@+id/title_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:gravity="center"
android:text="Chapters"
android:textColor="#fff"
android:textStyle="bold" />
</RelativeLayout>
<!-- Listview to display slider menu -->
<ListView
android:id="@+id/list_menu"
android:layout_width="240dp"
android:layout_height="match_parent"
android:layout_gravity="start"
android:background="@color/list_background"
android:choiceMode="singleChoice"
android:divider="@color/list_divider"
android:dividerHeight="1dp"
android:listSelector="@android:color/transparent" />
</android.support.v4.widget.DrawerLayout>
public class MainActivity extends BaseActivity {
SqliteDbHelper dbHelper;
Chapter chapter;
ListView lv;
ArrayList<Chapter> al;
ChapterListAdapter cla;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
al=dbHelper.getChapterDetails();
lv = (ListView) findViewById(R.id.custom_list);
cla=new ChapterListAdapter(MainActivity.this,al);
lv.setAdapter(cla);
}
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<ListView
android:id="@+id/custom_list"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:dividerHeight="1dp" />
</LinearLayout>
09-10 02:03:13.98814284-14284/?E/AndroidRuntime﹕ 致命异常:主
java.lang.RuntimeException:无法启动活动组件信息{com.steve.database/com.steve.database.MainActivity}:android.view.InflateException:二进制XML文件行#26:膨胀类android.widget.ListView时出错
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2211)上
在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261)上
在android.app.ActivityThread.access$600(ActivityThread.java:141)
在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
位于android.os.Handler.dispatchMessage(Handler.java:99)
位于android.os.Looper.loop(Looper.java:137)
位于android.app.ActivityThread.main(ActivityThread.java:5103)
位于java.lang.reflect.Method.Invokenactive(本机方法)
位于java.lang.reflect.Method.invoke(Method.java:525)
在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run上(ZygoteInit.java:737)
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
在dalvik.system.NativeStart.main(本机方法)
原因:android.view.InflateException:二进制XML文件行#26:对类android.widget.ListView进行充气时出错
位于android.view.LayoutInflater.createView(LayoutInflater.java:620)
在com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)上
位于android.view.LayoutInflater.onCreateView(LayoutInflater.java:669)
位于android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:694)
位于android.view.LayoutInflater.rInflate(LayoutInflater.java:755)
在android.view.LayoutInflater.inflate(LayoutInflater.java:492)
在android.view.LayoutInflater.inflate(LayoutInflater.java:397)
在android.view.LayoutInflater.充气(LayoutInflater.java:353)
位于com.steve.database.BaseActivity.onCreate(BaseActivity.java:72)
位于com.steve.database.MainActivity.onCreate(MainActivity.java:30)
位于android.app.Activity.performCreate(Activity.java:5133)
位于android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2175)上
在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261)上
在android.app.ActivityThread.access$600(ActivityThread.java:141)
在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
位于android.os.Handler.dispatchMessage(Handler.java:99)
位于android.os.Looper.loop(Looper.java:137)
位于android.app.ActivityThread.main(ActivityThread.java:5103)
位于java.lang.reflect.Method.Invokenactive(本机方法)
位于java.lang.reflect.Method.invoke(Method.java:525)
在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run上(ZygoteInit.java:737)
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
在dalvik.system.NativeStart.main(本机方法)
原因:java.lang.reflect.InvocationTargetException
位于java.lang.reflect.Constructor.constructNative(本机方法)
位于java.lang.reflect.Constructor.newInstance(Constructor.java:417)
位于android.view.LayoutInflater.createView(LayoutInflater.java:594)
在com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)上
位于android.view.LayoutInflater.onCreateView(LayoutInflater.java:669)
位于android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:694)
位于android.view.LayoutInflater.rInflate(LayoutInflater.java:755)
在android.view.LayoutInflater.inflate(LayoutInflater.java:492)
在android.view.LayoutInflater.inflate(LayoutInflater.java:397)
在android.view.LayoutInflater.充气(LayoutInflater.java:353)
位于com.steve.database.BaseActivity.onCreate(BaseActivity.java:72)
位于com.steve.database.MainActivity.onCreate(MainActivity.java:30)
位于android.app.Activity.performCreate(Activity.java:5133)
位于android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2175)上
在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261)上
在android.app.ActivityThread.access$600(ActivityThread.java:141)
在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
位于android.os.Handler.dispatchMessage(Handler.java:99)
位于android.os.Looper.loop(Looper.java:137)
位于android.app.ActivityThread.main(ActivityThread.java:5103)
位于java.lang.reflect.Method.Invokenactive(本机方法)
位于java.lang.reflect.Method.invoke(Method.java:525)
在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run上(ZygoteInit.java:737)
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
在dalvik.system.Nati