我间歇性地得到了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);