当前位置: 首页 > 面试题库 >

@ + id / android:list和@ + id / list之间有什么区别

禹昆
2023-03-14
问题内容

我想知道@+id/android:list和之间有什么区别@+id/list。我知道最后一个是常规的ID分配,但第一个看起来不同。有什么特别之处?

我在哪里看到的: 我正在研究ListView,ListAdapter之类的东西,作者在布局xml文件中定义了ListView,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:orientation="vertical"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   >
<ListView
    android:id="@+id/android:list"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    />
<TextView
    android:id="@+id/android:empty"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:text="@string/main_no_items"/>
</LinearLayout>

我也要提一下@+id/android:emptyid

他还扩大了ListActivity课堂。

这是文章的出处。

还有我在想什么问题:

  1. 我们应该扩展ListActivity吗?也许我想要一个还包含其他视图的活动。
  2. 我们@+id/android:list只是因为扩展而ListActivity使用,或者如果扩展就可以使用相同的约定Activity吗?

谢谢。


问题答案:

Android中的资源ID是特定于某个程序包的(这很好,否则,如果您的应用程序同时处理多个程序包,则可能会有很多冲突)。

@+id/list会在您的应用(=您的程序包)中创建一个名为“列表”的资源ID,并为其指定一个唯一ID。在代码中,应为R.id.list

@android:id/list将使用android包中的ID“列表”(在代码中为)android.R.id.list

编辑:需要添加更正David Hedlund指出:正确的参考将是@android:id/list。另外,这+表示您正在定义新的ID-
在引用Android API中定义的内容时,显然不需要此ID。



 类似资料:
  • 问题内容: 和CSS 之间有什么区别?可以使用吗? 我看到不同的开发人员在这两种方式上都这样做,而且由于我是自学成才的,所以我从来没有真正想过。 问题答案: 必须是唯一的,才能应用于许多事物。在CSS中,看起来像和元素看起来像 通常,只要您要引用特定元素,并且在有很多相似的事物时使用。举例来说,常见的元素之类的东西,,。常见元素是或。 但是,您应该了解的最基本的优先级是选择器优先于选择器。如果您有

  • 问题内容: @id/和之间的区别是什么@+id/? 在@+id/加号中+指示创建一个新的资源名称并将其添加到R.java文件中,但是那又如何@id/呢?从:的文档中,ID当引用Android资源时ID,不需要加号,但必须添加android包名称空间,如下所示: 但是在下面的图像中,Eclipse并未提出任何建议@android:id/。 该图显示了对@ / id和@ + / id的建议 是和一样吗

  • 也许是一个新手的问题...... 我开始学习JavaFX在FMXL应用程序中使用场景生成器,通过阅读以下教程: http://docs.oracle.com/javase/8/javafx/get-started-tutorial/fxml_tutorial.htm 所以一旦我应用了一些更改,这个2个ID的问题出现了...我可能错过了或混淆了他们的一些事情... 谁能告诉我它们在哪些情况下被使用?

  • 问题内容: java中的以下内容之间有什么区别: 目的 参考编号 参考变量 当我看到这样的语句时: 这是类,但不是对象吗?如果是这样..我在其他地方看到了这一点: cos,如果是这样,那么..somewhere就像 本地是的子类别。那么在这种情况下意味着什么呢?它有什么作用? 问题答案: 对象本质上是堆中生活的一块内存。(对象的部分内存结构包括对该对象类的引用。) Java中的对象变量(如本例中的

  • 问题内容: 需要了解的区别和使用python2.7 两者都返回一个列表,那么到底有什么区别? 问题答案: 在Python 3.x中, 返回一类不可变的可迭代对象,它使您可以对其进行迭代,它不生成列表,并且它们不将范围内的所有元素存储在内存中,而是在运行时生成元素(当您对其进行迭代时) ,而产生一个列表(通过遍历所有元素并在内部追加到列表中)。 范例- 理想情况下,如果只想遍历该值的范围,则速度会更