在android视图中出现频繁的问题,parsingXML时出错:未绑定的前缀

我在Android视图中经常遇到问题,在Error parsing XML: unbound prefix on Line 2

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout android:orientation="vertical" android:id="@+id/myScrollLayout" android:layout_width="fill_parent" android:layout_height="wrap_content"> <TextView android:layout_height="wrap_content" android:layout_width="fill_parent" android:text="Family" android:id="@+id/Family" android:textSize="16px" android:padding="5px" android:textStyle="bold" android:gravity="center_horizontal"> </TextView> <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="vertical" android:scrollbars="vertical"> <LinearLayout android:orientation="vertical" android:id="@+id/myMainLayout" android:layout_width="fill_parent" android:layout_height="wrap_content"> </LinearLayout> </ScrollView> </LinearLayout> 

有几个原因可能会发生:

1)你看到这个错误的命名空间不正确,或者在属性中input错误。 像“xmlns”是错误的,它应该是xmlns:android

2)第一个节点需要包含: xmlns:android="http://schemas.android.com/apk/res/android"

3)如果您要集成AdMob检查自定义参数(如ad:adSize),则需要

xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"

4)如果你正在使用LinerLayout,你可能需要定义工具

xmlns:tools="http://schemas.android.com/tools"

我要添加一个单独的答案,因为我没有看到它在这里。 这不是Pentium 10所要求的100%,但是我最终通过searchError parsing XML: unbound prefix

原来,我使用AdMob广告的自定义参数,如ads:adSize ,但我没有添加

  xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads" 

到布局。 一旦我添加它,它工作得很好。

我有这个相同的问题。

确保前缀(android:[whatever])拼写正确,写入正确。 在行xmlns:android="http://schemas.android.com/apk/res/android"的情况下,请确保您有完整的前缀xmlns:android ,并且拼写正确。 与任何其他前缀相同 – 确保拼写正确,并具有android:[name] 。 这是什么解决了我的问题。

正如你所提到的,你需要指定正确的命名空间 。 你也看到这个错误的命名空间不正确。

 <?xml version="1.0" encoding="utf-8"?> <ScrollView xmlns="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="10dip"> 

不pipe用。

更改:

 xmlns="http://schemas.android.com/apk/res/android" 

 xmlns:android="http://schemas.android.com/apk/res/android" 

错误消息是指所有以“android:”开头的内容,因为XML不知道“ android: ”命名空间是什么。

xmlns:android定义它。

在使用未定义的前缀的情况下,可能会发生此错误,例如:

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <TabHost XYZ:id="@android:id/tabhost" android:layout_width="fill_parent" android:layout_height="fill_parent" > </TabHost> 

由于尚未定义,Android编译器不知道XYZ是什么。

你的情况,你应该添加下面的定义到xml文件的根节点。

 xmlns:android="http://schemas.android.com/apk/res/android" 

ViewPager指标的未绑定前缀错误

在您的parentLayout中随同以下标题标签一起:

 xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" 

另外添加:

 xmlns:app="http://schemas.android.com/apk/res-auto" 

这为我做了诡计。

对我来说,我在这里第一行得到了“unbound prefix”错误,虽然我在第四行拼错了android。

 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" anrdoid:fillViewport="true" > 

我有同样的问题,并发现解决scheme是将android:工具添加到第一个节点。 在我的情况下,这是一个LineraLayout:

  <LinearLayout 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" android:orientation="vertical"> 

我会为新手和像我这样的不了解XML的人们多投一些。

上面的答案相当不错,但一般的答案是,你需要在config.xml文件中使用的任何命名空间的命名空间。

翻译:任何XML标签名称都是带有名称空间的标签,其中blah是名称空间,fubar是XML标签。 命名空间使您可以使用许多不同的工具来用自己的标签名称来解释XML。 例如,英特尔XDK使用名称空间intelxdk和android使用android。 因此,您需要以下命名空间或构build引发血液(即parsingXML的错误:未绑定的前缀),它被转换为:您使用了一个命名空间,但没有定义它。

  xmlns:android="http://schemas.android.com/apk/res/android" xmlns:intelxdk="http://xdk.intel.com/ns/v1" 

如果您没有正确包含xmlns:mm ,则通常会出现此错误,通常会出现在第一行代码中。

对我来说这是..

的xmlns:毫米= “http://millennialmedia.com/android/schema”;

我错过了第一行的代码

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:mm="http://millennialmedia.com/android/schema" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center" android:layout_marginTop="50dp" android:layout_marginBottom="50dp" android:background="@android:color/transparent" > 

在我的情况下,错误不是由上述的任何XML命名空间问题引起的。 相反,它是android:id属性的位置 – 它需要成为特定元素声明中的第一项。

所以这:

 <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/bottomtext" android:singleLine="true" /> 

…需要这样读:

 <TextView android:id="@+id/bottomtext" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" /> 

除此之外,还有一个这种错误发生的场景 –

当你或你的库项目定义自定义属性int attr.xml时,你可以在布局文件中使用这些属性而不用定义名称空间。

通常我们在布局文件的头文件中使用这个名称空间定义。

 xmlns:android="http://schemas.android.com/apk/res/android" 

然后确保文件中的所有属性都应该以

 android:ATTRIBUTE-NAME 

你需要确定如果你的一些attirbute不是从android:ATTRIBUTE-NAME之外的东西开始

 temp:ATTRIBUTE-NAME 

在这种情况下,你有这个“临时”也作为命名空间,通常包括 –

 xmlns:temp="http://schemas.android.com/apk/res-auto" 

您只需要在根标记中添加适当的名称空间。 xmlns:android =“http://schemas.android.com/apk/res/android”Android元素在这个名字空间中声明,与导入类或包相同。;

当我拼错android时,通常会发生这种情况 – 我只是input了ororid或类似的内容,特别是在编程几个小时之后,一见钟情并不明显,所以我只是逐个search“android”,看看search是否跳过一个标签 – 如果有的话,我仔细看看,看看哪里是错字。