236

我已经开始学习 Android 开发,并且正在学习书中的 todolist 示例:

// Create the array list of to do items
final ArrayList<String> todoItems = new ArrayList<String>();

// Create the array adapter to bind the array to the listView
final ArrayAdapter<String> aa;
aa = new ArrayAdapter<String>(  this, 
                                android.R.layout.simple_list_item_1,
                                todoItems
                            );
myListView.setAdapter(aa);

我无法完全理解这段代码,尤其是这一行:

android.R.layout.simple_list_item_1
4

7 回答 7

266

Zakaria,这是对作为 Android 操作系统一部分的内置 XML 布局文档的引用,而不是您自己的 XML 布局之一。

这是您可以使用的更多布局列表:http: //developer.android.com/reference/android/R.layout.html
(更新链接感谢@Estel:https ://github.com/android/platform_frameworks_base/树/主/核心/资源/资源/布局

您实际上可以查看布局的代码。

于 2010-09-08T00:48:42.243 回答
35

这是安卓操作系统的一部分。这是定义的 XML 文件的实际版本。

simple_list_item_1:

<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@android:id/text1"
    style="?android:attr/listItemFirstLineStyle"
    android:paddingTop="2dip"
    android:paddingBottom="3dip"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" />

simple_list_item_2:

<TwoLineListItem xmlns:android="http://schemas.android.com/apk/res/android"
    android:paddingTop="2dip"
    android:paddingBottom="2dip"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content">

    <TextView android:id="@android:id/text1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        style="?android:attr/listItemFirstLineStyle"/>

    <TextView android:id="@android:id/text2"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_below="@android:id/text1"
        style="?android:attr/listItemSecondLineStyle" />

</TwoLineListItem> 
于 2013-08-23T06:04:15.110 回答
13

正如上面的回答:kcoppock 和 Joril

去这里:https ://github.com/android/platform_frameworks_base/tree/master/core/res/res/layout

只需右键单击您想要的布局文件,然后选择“另存为”,保存在某处,然后将其复制到您的android项目(eclipse)的“布局”文件夹中......

你可以看到布局的样子:)

走的路……

于 2012-12-18T06:43:12.850 回答
9

正如 Klap 所说,“android.R.layout.simple_list_item_1 是对作为 Android 操作系统一部分的内置 XML 布局文档的引用”
所有布局都位于:sdk\platforms\android-xx\data\res\布局
要查看布局的 XML:
Eclipse:只需在代码中的某处键入 android.R.layout.simple_list_item_1,按住 Ctrl,将鼠标悬停在 simple_list_item_1 上,然后从出现的下拉列表中选择“在 layout/simple_list_item_1.xml 中打开声明”。它将引导您访问 XML 的内容。
Android Studio : Project Window -> External Libraries -> Android X Platform -> res -> layout,在这里您将看到可用布局的列表。
在此处输入图像描述

于 2013-08-04T21:05:52.847 回答
7

android.R.layout.simple_list_item_1,这是您的 res/layout 文件夹中的行布局文件,其中包含listview. mylistview.setadapter(aa)现在我们只需使用;将数组列表项绑定到行布局。

于 2013-01-05T07:28:26.093 回答
5

无需转到外部链接,您需要的一切都已在您的计算机上:

Android\android-sdk\platforms\android-x\data\res\layout。

所有 android 布局的源代码都位于此处。

于 2013-07-03T03:27:09.983 回答
5

Per Arvand:
Eclipse:只需在代码中的某处键入android.R.layout.simple_list_item_1,按住 Ctrl,将鼠标悬停在simple_list_item_1 上,然后从出现的下拉列表中选择Open declaration in layout/simple_list_item_1.xml。它将引导您访问 XML 的内容。

从那里,如果您随后将鼠标悬停在编辑器中生成的simple_list_item_1.xml选项卡上,您将看到该文件位于C:\Data\applications\Android\android-sdk\platforms\android-19\data\res\ layout\simple_list_item_1.xml(或您的安装的等效位置)。

于 2014-09-11T18:01:26.490 回答