Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android与XML_Android_Xml - Fatal编程技术网

Android与XML

Android与XML,android,xml,Android,Xml,我是Android开发新手(今天刚刚开始)。我正在熟悉XML,这对我来说是新的。如果人们能帮助我理解这种语言,我将不胜感激 请参阅下面我所指的XML代码: <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:yourapp="http://schemas.android.com/apk/res-auto" &g

我是Android开发新手(今天刚刚开始)。我正在熟悉XML,这对我来说是新的。如果人们能帮助我理解这种语言,我将不胜感激

请参阅下面我所指的XML代码:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:yourapp="http://schemas.android.com/apk/res-auto" >
<item android:id="@+id/action_search"
    android:icon="@drawable/ic_super"
    android:title="@string/action_search" 
    yourapp:showAsAction="ifRoom|withText" />

</menu>

问题:

1) 思考XML代码的最佳方式是什么?我的理解是它们就像树一样。我应该把它想象成有层次结构的文件系统吗

2) 我不确定名称空间的用途是什么。例如:

<menu xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:yourapp="http://schemas.android.com/apk/res-auto" > 
<menu xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:yourapp="http://schemas.android.com/apk/res-auto" >

这是否意味着菜单标签包含xmlns:android属性和xmlns:yourapp属性

3) 我真的很想学习如何更熟练地使用XML,任何指向资源的链接都将非常感谢(我尝试了w3,但它并没有回答我的问题

4) “:”的意思是什么。我理解代码的其余部分。API对此解释得很清楚,但我对XML的基本理解妨碍了我对代码的全面理解。

问题:

1) 思考XML代码的最佳方式是什么?我的理解是它们就像树一样。我应该把它想象成有层次结构的文件系统吗

--没有xml是数据标记,因此有开始标记和结束标记以及自包含标记,如: 将描述你的冰箱,如果你有多种乳制品和一些蔬菜在冰箱里,它会像这样

<Fridge>
   <Dairy>
      <Milk />
      <Cheese />
   </Dairy>
   <Veggies>
      <Carrots />
      <Pumpkin />
   </Veggies>
</Fridge>

2) 我不确定名称空间的用途是什么。例如:

<menu xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:yourapp="http://schemas.android.com/apk/res-auto" > 
<menu xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:yourapp="http://schemas.android.com/apk/res-auto" >

这是否意味着菜单标签包含xmlns:android属性和xmlns:yourapp属性

因此xmlns是xml名称空间,它们在模式中定义,比如定义属性,名称空间结合了一系列定义的属性,如:

<menu xmlns:android .. 
  android:name=""
  android:orderId="5"
  />

android模式名称空间描述了android平台知道的所有属性,然后您可以使用android访问它们:然后是该菜单类型已知的属性

3) 我真的很想学习如何更熟练地使用XML,任何指向资源的链接都将非常感谢(我尝试了w3,但它并没有回答我的问题

android中的XML不是您在其他地方会使用的XML,android只使用XML来描述屏幕和菜单的外观和行为,了解android如何使用XML的最好地方是查看developer.android.com,尝试查看线性布局并从中学习

4) “:”的意思是什么。我理解代码的其余部分。正如API非常清楚地解释的那样,但我对XML的基本理解使我无法完全理解代码

“that:this”中的:使用该名称空间中的该属性,并且名称空间是用xmlns:nameditwither=“schema location”定义的 NameDitWhather:attribute1=“此属性描述的内容”

  • 是的,您可以将其视为嵌套结构,非常类似于文件系统的树
  • 是的,这意味着
    菜单
    具有其中两个属性。有关名称空间的详细信息,请参阅
  • 如果不知道W3在哪些问题上帮不了你,就很难说出你在寻找什么。XML非常简单。没有什么比看上去更重要的了
  • foo:bar
    中的冒号表示
    bar
    位于
    foo
    命名空间中