有没有办法在Android Studio编辑器中显示RecyclerView内容的预览?


Answers:


641

@oRRs是正确的!

我正在使用Android Studio 1.4 RC2,现在您可以指定任何自定义布局。

我尝试了自定义CardView,它可以工作。

tools:listitem="@android:layout/simple_list_item_checked"

1
参见@oRRs评论:tools:listitem =“ @ android:layout / simple_list_item_checked”
Philippe David

2
有什么办法可以在网格模式下预览?

26
@sajad尝试使用此应用程序:layoutManager =“ GridLayoutManager”工具:listitem =“ @ layout / layout_list_item_select_seat”应用程序:spanCount =“ 5”
atabouraya

4
如果您还希望将方向设置为水平,则可以:tools:orientation="horizontal"
android开发人员

3
除了指定tools:orientation="horizontal"android:orientation="horizontal"我还必须app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"根据stackoverflow.com/questions/35681433/…
迈克尔·奥索夫斯基

135

tools 名称空间可启用设计时功能(例如,在片段中显示哪种布局)或编译时行为(例如,将哪种收缩模式应用于XML资源),它确实是一项功能强大的功能,正在开发中,并且您不必每次都编译代码是时候看到变化了

AndroidX [关于]和GridLayoutManager

implementation 'androidx.recyclerview:recyclerview:1.1.0'
<androidx.recyclerview.widget.RecyclerView
    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"

    tools:layoutManager="androidx.recyclerview.widget.GridLayoutManager"
    tools:listitem="@layout/item"
    tools:itemCount="10"
    tools:orientation="vertical"
    tools:scrollbars="vertical"
    tools:spanCount="3"/>

支持和LinearLayoutManager

implementation 'com.android.support:recyclerview-v7:28.0.0'

<android.support.v7.widget.RecyclerView
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"

    android:layout_width="match_parent"
    android:layout_height="wrap_content"

    tools:layoutManager="android.support.v7.widget.LinearLayoutManager"
    tools:listitem="@layout/item"
    tools:itemCount="3"
    tools:orientation="horizontal"
    tools:scrollbars="horizontal" />

引入的另一个很酷的功能Android studio 3.0是通过工具属性预定义数据,以使用资源轻松可视化布局结构@tools:sample/*

item.xml

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="100dp"
    android:layout_height="150dp"
    android:layout_marginRight="15dp"
    android:layout_marginBottom="10dp"
    android:orientation="vertical"
    tools:background="@tools:sample/backgrounds/scenic">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textColor="@color/colorWhite"
        tools:text="@tools:sample/first_names" />

</FrameLayout>

结果:


2
这应该被标记为答案,因为它详细且与RecylerView兼容。ListViews现已不再使用。
Abhinav Saxena

我必须在属性区域中切换到较少的属性选项卡才能看到该listitem选项,我只需将其键入xml代码即可!
乔治·乌德森

1
如果您使用自己的列表项布局,而只看到一个(1)列表项,请检查布局中的layout_height =“ wrap_content”。
杰弗里

1
有趣的是,它仅对我有用,如果我使用ListView,而不对RecyclerView使用。有任何想法吗?我复制粘贴内容以确保我不会将RecyclerView弄乱。但实际上它是有效的,因此它是有效的XML。
xarlymg89

“ @tools:sample / *”是可插入布局中的占位符数据的reserver android资源类型。last_names-常用的姓氏。完整的官方文档- developer.android.com/studio/write/...
yoAlex5

4

首先,在项目XML中添加以下行,以在编辑项目时预览列表:

tools:showIn="@layout/activity_my_recyclerview_item"

然后,在您的RecyclerView XML中添加以下行以预览您的商品在列表中的外观:

tools:listitem="@layout/adapter_item"

3

从Android Studio 1.3.1开始,它在预览中显示默认列表项,但尚未允许您指定自己的列表项。希望它会来。


19
在AS 1.4中,您可以从一些预定义的布局中进行选择,例如:tools:listitem =“ @ android:layout / simple_list_item_checked”。只需在布局编辑器中右键单击RecyclerView,然后选择“预览列表内容”。不幸的是,您仍然不能将其用于自己的布局,至少对我来说,它会引发渲染错误。
oRRs 2015年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.