我在我的 Android 应用程序中有一个显示信息的 Activity ,其中有一个网站的 URL 链接。我可以毫无问题地打开它,但是当我单击返回按钮时,我收到“不幸的是应用程序已停止工作”消息,并且 logcat 给了我这个:
09-25 23:21:58.847: E/AndroidRuntime(3534): java.lang.RuntimeException: Unable to resume activity {com.example.salefinder/com.example.salefinder.Sale}: android.view.InflateException: Binary XML file line #118: Error inflating class
关于如何解决这个问题有什么想法吗?
编辑:
这是整个错误堆栈:
09-25 23:50:32.367: E/AndroidRuntime(3573): FATAL EXCEPTION: main 09-25 23:50:32.367: E/AndroidRuntime(3573): java.lang.RuntimeException: Unable to resume activity {com.example.salefinder/com.example.salefinder.Sale}: android.view.InflateException: Binary XML file line #118: Error inflating class 09-25 23:50:32.367: E/AndroidRuntime(3573): at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2444) 09-25 23:50:32.367: E/AndroidRuntime(3573): at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2472) 09-25 23:50:32.367: E/AndroidRuntime(3573): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1173) 09-25 23:50:32.367: E/AndroidRuntime(3573): at android.os.Handler.dispatchMessage(Handler.java:99) 09-25 23:50:32.367: E/AndroidRuntime(3573): at android.os.Looper.loop(Looper.java:137) 09-25 23:50:32.367: E/AndroidRuntime(3573): at android.app.ActivityThread.main(ActivityThread.java:4424) 09-25 23:50:32.367: E/AndroidRuntime(3573): at java.lang.reflect.Method.invokeNative(Native Method) 09-25 23:50:32.367: E/AndroidRuntime(3573): at java.lang.reflect.Method.invoke(Method.java:511) 09-25 23:50:32.367: E/AndroidRuntime(3573): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) 09-25 23:50:32.367: E/AndroidRuntime(3573): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) 09-25 23:50:32.367: E/AndroidRuntime(3573): at dalvik.system.NativeStart.main(Native Method) 09-25 23:50:32.367: E/AndroidRuntime(3573): Caused by: android.view.InflateException: Binary XML file line #118: Error inflating class 09-25 23:50:32.367: E/AndroidRuntime(3573): at android.view.LayoutInflater.createView(LayoutInflater.java:606) 09-25 23:50:32.367: E/AndroidRuntime(3573): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:680) 09-25 23:50:32.367: E/AndroidRuntime(3573): at android.view.LayoutInflater.rInflate(LayoutInflater.java:739) 09-25 23:50:32.367: E/AndroidRuntime(3573): at android.view.LayoutInflater.rInflate(LayoutInflater.java:742) 09-25 23:50:32.367: E/AndroidRuntime(3573): at android.view.LayoutInflater.inflate(LayoutInflater.java:489) 09-25 23:50:32.367: E/AndroidRuntime(3573): at android.view.LayoutInflater.inflate(LayoutInflater.java:396) 09-25 23:50:32.367: E/AndroidRuntime(3573): at android.view.LayoutInflater.inflate(LayoutInflater.java:352) 09-25 23:50:32.367: E/AndroidRuntime(3573): at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:251) 09-25 23:50:32.367: E/AndroidRuntime(3573): at android.app.Activity.setContentView(Activity.java:1835) 09-25 23:50:32.367: E/AndroidRuntime(3573): at com.example.salefinder.Sale.saleCreate(Sale.java:71) 09-25 23:50:32.367: E/AndroidRuntime(3573): at com.example.salefinder.Sale.onRestart(Sale.java:67) 09-25 23:50:32.367: E/AndroidRuntime(3573): at android.app.Instrumentation.callActivityOnRestart(Instrumentation.java:1143) 09-25 23:50:32.367: E/AndroidRuntime(3573): at android.app.Activity.performRestart(Activity.java:4520) 09-25 23:50:32.367: E/AndroidRuntime(3573): at android.app.Activity.performResume(Activity.java:4531) 09-25 23:50:32.367: E/AndroidRuntime(3573): at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2434) 09-25 23:50:32.367: E/AndroidRuntime(3573): ... 10 more 09-25 23:50:32.367: E/AndroidRuntime(3573): Caused by: java.lang.reflect.InvocationTargetException 09-25 23:50:32.367: E/AndroidRuntime(3573): at java.lang.reflect.Constructor.constructNative(Native Method) 09-25 23:50:32.367: E/AndroidRuntime(3573): at java.lang.reflect.Constructor.newInstance(Constructor.java:417) 09-25 23:50:32.367: E/AndroidRuntime(3573): at android.view.LayoutInflater.createView(LayoutInflater.java:586) 09-25 23:50:32.367: E/AndroidRuntime(3573): ... 24 more 09-25 23:50:32.367: E/AndroidRuntime(3573): Caused by: java.lang.IllegalStateException: You are only allowed to have a single MapView in a MapActivity 09-25 23:50:32.367: E/AndroidRuntime(3573): at com.google.android.maps.MapActivity.setupMapView(MapActivity.java:397) 09-25 23:50:32.367: E/AndroidRuntime(3573): at com.google.android.maps.MapView.(MapView.java:289) 09-25 23:50:32.367: E/AndroidRuntime(3573): at com.google.android.maps.MapView.(MapView.java:264) 09-25 23:50:32.367: E/AndroidRuntime(3573): at com.google.android.maps.MapView.(MapView.java:247) 09-25 23:50:32.367: E/AndroidRuntime(3573): ... 27 more
编辑 2: 在第 71 行,我有
setContentView(R.layout.activity_sale);
这是 activity_sale.xml:
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<LinearLayout
android:id="@+id/kontejner"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#1d7080"
android:orientation="vertical" >
<ImageView
android:layout_width="fill_parent"
android:layout_height="58dp"
android:paddingBottom="5dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:paddingTop="5dp"
android:src="@drawable/header" />
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="3dp"
android:background="@color/border"
android:orientation="horizontal" />
<LinearLayout
android:id="@+id/top"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@color/blue"
android:weightSum="1" >
<ImageView
android:id="@+id/logo"
android:layout_width="0dp"
android:layout_height="58dp"
android:layout_weight="0.25"
android:paddingBottom="5dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:paddingTop="5dp" />
<LinearLayout
android:id="@+id/basicData"
android:layout_width="0dp"
android:layout_height="58dp"
android:layout_weight="0.6"
android:orientation="vertical"
android:paddingBottom="5dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:paddingTop="5dp" >
<TextView
android:id="@+id/company"
android:layout_width="fill_parent"
android:layout_height="20dp"
android:textStyle="bold" />
<TextView
android:id="@+id/website"
android:layout_width="fill_parent"
android:layout_height="12dp"
android:autoLink="web"
android:textSize="10dp" />
<TextView
android:id="@+id/dates"
android:layout_width="fill_parent"
android:layout_height="26dp" />
</LinearLayout>
<TextView
android:id="@+id/percentage"
android:layout_width="0dp"
android:layout_height="58dp"
android:layout_weight="0.15"
android:gravity="center"
android:textSize="20dp"
android:textStyle="bold" />
</LinearLayout>
<TextView
android:id="@+id/description"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@color/blue"
android:paddingBottom="5dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:paddingTop="5dp" />
<Button
android:id="@+id/showAddress"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@color/border"
android:textColor="@color/blue" />
<LinearLayout
android:id="@+id/address"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@color/blue"
android:orientation="vertical"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:paddingTop="10dp" />
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="3dp"
android:background="@color/border"
android:orientation="horizontal" />
<com.google.android.maps.MapView
android:id="@+id/mapView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:apiKey="0z_x3fer_iyOOuWjZ77ZhMt5cYcKovSONgxLeSg"
android:background="@color/blue"
android:clickable="true" />
</LinearLayout>
</ScrollView>
最佳答案
您正在扩充一个布局,该布局在 Activity onResume() 方法中包含一些 XML 错误。
发布该 XML,我们将尝试进行更好的调查。
关于android - 返回应用程序时为 "Error inflating class",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12608500/