【发布时间】:2016-12-04 14:13:17
【问题描述】:
我一直在努力创建最简单的项目,这会导致我遇到问题。我最初认为这是一个地图问题,直到我意识到这可能是一个一般(支持库?)片段问题。 (我尝试在我的 SGII v4.1.2 上运行此代码)
Java 代码:
package com.example.testapp;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
public class MSMap extends FragmentActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_msmap);
}
}
XML 布局
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<fragment
android:id="@+id/themap"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
</RelativeLayout>
上面用“error inflating”给出这个错误:
03-09 12:06:56.850: E/AndroidRuntime(891): 致命异常: main 03-09 12:06:56.850:E/AndroidRuntime(891):java.lang.RuntimeException: 无法开始活动 组件信息{com.example.testapp/com.example.testapp.MSMap}: android.view.InflateException:二进制 XML 文件第 9 行:错误 膨胀类片段 03-09 12:06:56.850: E/AndroidRuntime(891): 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2110) 03-09 12:06:56.850: E/AndroidRuntime(891): 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2135) 03-09 12:06:56.850: E/AndroidRuntime(891): 在 android.app.ActivityThread.access$700(ActivityThread.java:140) 03-09 12:06:56.850:E/AndroidRuntime(891):在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1237) 03-09 12:06:56.850: E/AndroidRuntime(891): 在 android.os.Handler.dispatchMessage(Handler.java:99) 03-09 12:06:56.850:E/AndroidRuntime(891):在 android.os.Looper.loop(Looper.java:137) 03-09 12:06:56.850: E/Android 运行时(891):在 android.app.ActivityThread.main(ActivityThread.java:4921) 03-09 12:06:56.850:E/AndroidRuntime(891):在 java.lang.reflect.Method.invokeNative(Native Method) 03-09 12:06:56.850:E/AndroidRuntime(891):在 java.lang.reflect.Method.invoke(Method.java:511) 03-09 12:06:56.850: E/Android 运行时(891):在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1027) 03-09 12:06:56.850: E/AndroidRuntime(891): 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:794) 03-09 12:06:56.850:E/AndroidRuntime(891):在 dalvik.system.NativeStart.main(本机方法)03-09 12:06:56.850: E/AndroidRuntime(891):引起:android.view.InflateException: 二进制 XML 文件第 9 行:膨胀类片段时出错 03-09 12:06:56.850:E/AndroidRuntime(891):在 android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704) 03-09 12:06:56.850: E/AndroidRuntime(891): 在 android.view.LayoutInflater.rInflate(LayoutInflater.java:746) 03-09 12:06:56.850:E/AndroidRuntime(891):在 android.view.LayoutInflater.inflate(LayoutInflater.java:489) 03-09 12:06:56.850:E/AndroidRuntime(891):在 android.view.LayoutInflater.inflate(LayoutInflater.java:396) 03-09 12:06:56.850:E/AndroidRuntime(891):在 android.view.LayoutInflater.inflate(LayoutInflater.java:352) 03-09 12:06:56.850:E/AndroidRuntime(891):在 com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:313) 03-09 12:06:56.850: E/AndroidRuntime(891): 在 android.app.Activity.setContentView(Activity.java:1924) 03-09 12:06:56.850:E/AndroidRuntime(891):在 com.example.testapp.MSMap.onCreate(MSMap.java:23) 03-09 12:06:56.850:E/AndroidRuntime(891):在 android.app.Activity.performCreate(Activity.java:5206) 03-09 12:06:56.850:E/AndroidRuntime(891):在 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094) 03-09 12:06:56.850: E/AndroidRuntime(891): 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2074) 03-09 12:06:56.850: E/AndroidRuntime(891): ... 11 更多 03-09 12:06:56.850:E/AndroidRuntime(891):原因: java.lang.NullPointerException: 名称 == null 03-09 12:06:56.850: E/Android 运行时(891):在 java.lang.VMClassLoader.findLoadedClass(Native Method) 03-09 12:06:56.850:E/AndroidRuntime(891):在 java.lang.ClassLoader.findLoadedClass(ClassLoader.java:354) 03-09 12:06:56.850:E/AndroidRuntime(891):在 java.lang.ClassLoader.loadClass(ClassLoader.java:491) 03-09 12:06:56.850:E/AndroidRuntime(891):在 java.lang.ClassLoader.loadClass(ClassLoader.java:461) 03-09 12:06:56.850:E/AndroidRuntime(891):在 android.support.v4.app.Fragment.instantiate(Fragment.java:391) 03-09 12:06:56.850:E/AndroidRuntime(891):在 android.support.v4.app.Fragment.instantiate(Fragment.java:369) 03-09 12:06:56.850:E/AndroidRuntime(891):在 android.support.v4.app.FragmentActivity.onCreateView(FragmentActivity.java:272) 03-09 12:06:56.850: E/AndroidRuntime(891): 在 android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:676) 03-09 12:06:56.850: E/AndroidRuntime(891): ... 21 更多
代码和 XML 之间是否存在某种不匹配?
- 我尝试过让我的代码扩展活动和片段活动吗?
- XML 包含片段周围的相对布局?那是一个 不知何故有问题?
在所有情况下,我都尝试了所有我能想到的例子和/或谷歌我的方式。所有这些都会导致相同的错误。
注意:我的项目中有“参考库”和“Android 依赖项”和“库”中有 android-support-v4.jar。
【问题讨论】: