我间歇性地得到了InflateException / ClassNotFoundException错误.我之前在SO中看到过类似的错误但它们是由拼写错误引起的.我正确地拼写了’
ImageView’所以我不知道是什么导致了错误.
v = View.inflate(getContext(),R.layout.event_show_row_layout,null);
这是布局xml:
<?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="wrap_content" android:orientation="vertical" > <RelativeLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:paddingLeft="10dip" android:paddingRight="10dip" > <TextView android:id="@+id/fromTextView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="12sp" android:textStyle="italic" /> <TextView android:id="@+id/timeTextView" android:layout_width="fill_parent" android:layout_height="wrap_content" android:gravity="right" android:textSize="12sp" android:textStyle="italic" /> </RelativeLayout> <RelativeLayout android:id="@+id/layoutPostImage" android:layout_width="match_parent" android:layout_height="wrap_content" android:padding="4dp" > <ImageView android:id="@+id/postImageView" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_margin="2dp" android:adjustViewBounds="true" android:background="@drawable/timeline_image_border" android:contentDescription="@string/hello" android:paddingBottom="6dp" android:scaleType="fitXY" android:src="@drawable/timeline_image_dummy" /> </RelativeLayout> <RelativeLayout android:id="@+id/wordsRelativeLayout" android:layout_width="wrap_content" android:layout_height="wrap_content" > <TextView android:id="@+id/wordsTextView" android:layout_width="fill_parent" android:layout_height="wrap_content" android:gravity="center_vertical|center_horizontal" android:paddingLeft="50dp" android:paddingRight="50dp" android:text="@string/hello" /> <ImageView android:id="@+id/topLeftQuoteImageView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_marginLeft="10dp" android:layout_marginTop="10dp" android:adjustViewBounds="true" android:contentDescription="@string/hello" android:maxHeight="25dp" android:maxWidth="25dp" android:scaleType="fitXY" android:src="@drawable/po_quotes_mobile1" /> <ImageView android:id="@+id/bottomRightQuoteImageView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentRight="true" android:layout_marginBottom="12dp" android:layout_marginRight="12dp" android:adjustViewBounds="true" android:contentDescription="@string/hello" android:maxHeight="25dp" android:maxWidth="25dp" android:scaleType="fitXY" android:src="@drawable/po_quotes_mobile2" /> </RelativeLayout> <RelativeLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="5dp" > <Button android:id="@+id/commentButton" android:layout_width="84dp" android:layout_height="24dp" android:layout_alignParentLeft="true" android:layout_marginLeft="5dp" android:background="@drawable/es_comment_btn" /> <Button android:id="@+id/buttonLike" android:layout_width="84dp" android:layout_height="24dp" android:layout_marginLeft="5dp" android:layout_toRightOf="@id/commentButton" android:background="@drawable/es_like_btn" /> <Button android:id="@+id/buttonNumberLike" android:layout_width="wrap_content" android:layout_height="24dp" android:layout_gravity="center" android:layout_marginLeft="5dp" android:layout_toRightOf="@id/buttonLike" android:background="@drawable/like_counter" android:textColor="@android:color/white" android:textSize="12sp" /> <Button android:id="@+id/buttonDelete" android:layout_width="38dp" android:layout_height="24dp" android:layout_alignParentRight="true" android:layout_marginRight="5dp" android:background="@drawable/es_more_btn" /> </RelativeLayout> <TextView android:id="@+id/commentsTextView" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginBottom="10dp" android:layout_marginLeft="10dp" android:layout_marginRight="10dp" android:layout_marginTop="10dp" android:background="#FFF9F8F1" android:text="@string/hello" android:textColor="@android:color/black" android:textSize="12sp" /> <TextView android:id="@+id/spacerTextView" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginLeft="10dp" android:layout_marginRight="10dp" android:layout_marginTop="10dp" /> </LinearLayout>
这是错误日志:
E/AndroidRuntime(15849): FATAL EXCEPTION: main E/AndroidRuntime(15849): android.view.InflateException: Binary XML file line #36: Error inflating class ImageView E/AndroidRuntime(15849): at org.holoeverywhere.LayoutInflater.createViewFromTag(LayoutInflater.java:454) E/AndroidRuntime(15849): at org.holoeverywhere.LayoutInflater.rInflate(LayoutInflater.java:737) E/AndroidRuntime(15849): at org.holoeverywhere.LayoutInflater.rInflate(LayoutInflater.java:740) E/AndroidRuntime(15849): at org.holoeverywhere.LayoutInflater.inflate(LayoutInflater.java:542) E/AndroidRuntime(15849): at org.holoeverywhere.LayoutInflater.inflate(LayoutInflater.java:492) E/AndroidRuntime(15849): at org.holoeverywhere.LayoutInflater.inflate(LayoutInflater.java:487) E/AndroidRuntime(15849): at android.view.View.inflate(View.java:8807) E/AndroidRuntime(15849): at com.mypackage.adapters.PostAdapter.getPostView(PostAdapter.java:283) E/AndroidRuntime(15849): at com.mypackage.adapters.PostAdapter.getView(PostAdapter.java:268) E/AndroidRuntime(15849): at android.widget.HeaderViewListAdapter.getView(HeaderViewListAdapter.java:220) E/AndroidRuntime(15849): at android.widget.AbsListView.obtainView(AbsListView.java:1430) E/AndroidRuntime(15849): at android.widget.ListView.makeAndAddView(ListView.java:1745) E/AndroidRuntime(15849): at android.widget.ListView.fillDown(ListView.java:670) E/AndroidRuntime(15849): at android.widget.ListView.fillFromTop(ListView.java:727) E/AndroidRuntime(15849): at android.widget.ListView.layoutChildren(ListView.java:1598) E/AndroidRuntime(15849): at android.widget.AbsListView.onLayout(AbsListView.java:1260) E/AndroidRuntime(15849): at android.view.View.layout(View.java:7175) E/AndroidRuntime(15849): at android.widget.FrameLayout.onLayout(FrameLayout.java:338) E/AndroidRuntime(15849): at android.view.View.layout(View.java:7175) E/AndroidRuntime(15849): at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1254) E/AndroidRuntime(15849): at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1130) E/AndroidRuntime(15849): at android.widget.LinearLayout.onLayout(LinearLayout.java:1047) E/AndroidRuntime(15849): at android.view.View.layout(View.java:7175) E/AndroidRuntime(15849): at android.widget.RelativeLayout.onLayout(RelativeLayout.java:912) E/AndroidRuntime(15849): at android.view.View.layout(View.java:7175) E/AndroidRuntime(15849): at android.widget.FrameLayout.onLayout(FrameLayout.java:338) E/AndroidRuntime(15849): at android.view.View.layout(View.java:7175) E/AndroidRuntime(15849): at net.simonvt.menudrawer.LeftDrawer.onLayout(LeftDrawer.java:64) E/AndroidRuntime(15849): at android.view.View.layout(View.java:7175) E/AndroidRuntime(15849): at android.widget.FrameLayout.onLayout(FrameLayout.java:338) E/AndroidRuntime(15849): at android.view.View.layout(View.java:7175) E/AndroidRuntime(15849): at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1254) E/AndroidRuntime(15849): at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1130) E/AndroidRuntime(15849): at android.widget.LinearLayout.onLayout(LinearLayout.java:1047) E/AndroidRuntime(15849): at android.view.View.layout(View.java:7175) E/AndroidRuntime(15849): at android.widget.FrameLayout.onLayout(FrameLayout.java:338) E/AndroidRuntime(15849): at android.view.View.layout(View.java:7175) E/AndroidRuntime(15849): at android.widget.FrameLayout.onLayout(FrameLayout.java:338) E/AndroidRuntime(15849): at android.view.View.layout(View.java:7175) E/AndroidRuntime(15849): at android.view.ViewRoot.performTraversals(ViewRoot.java:1140) E/AndroidRuntime(15849): at android.view.ViewRoot.handleMessage(ViewRoot.java:1859) E/AndroidRuntime(15849): at android.os.Handler.dispatchMessage(Handler.java:99) E/AndroidRuntime(15849): at android.os.Looper.loop(Looper.java:130) E/AndroidRuntime(15849): at android.app.ActivityThread.main(ActivityThread.java:3683) E/AndroidRuntime(15849): at java.lang.reflect.Method.invokeNative(Native Method) E/AndroidRuntime(15849): at java.lang.reflect.Method.invoke(Method.java:507) E/AndroidRuntime(15849): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) E/AndroidRuntime(15849): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) E/AndroidRuntime(15849): at dalvik.system.NativeStart.main(Native Method) E/AndroidRuntime(15849): Caused by: java.lang.ClassNotFoundException: Could not find class: ImageView E/AndroidRuntime(15849): at org.holoeverywhere.LayoutInflater.onCreateView(LayoutInflater.java:607) E/AndroidRuntime(15849): at org.holoeverywhere.LayoutInflater.createViewFromTag(LayoutInflater.java:448) E/AndroidRuntime(15849): ... 48 more
解决方法
试着改变
v = View.inflate(getContext(),null);
至
v = View.inflate(getApplicationContext(),null);