tools:text 对于 RecyclerView 项目
tools:text for RecyclerView items
我知道当你设置
tools:text="Sample text"
在 TextView
中,您会在 Android Studio 的预览模式下看到示例文本,但不会在实际应用中看到。我想对 RecyclerView
中的项目执行此操作,但我似乎做不到。这是我到目前为止所做的:
在 RecyclerView(名为 content_feed)中:
tools:listitem="@layout/cell_feed"
在单元格(名称cell_feed)中:
tools:showIn="@layout/content_feed"
这是 xml
个文件:
cell_feed.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="@dimen/height_feed_cell"
android:layout_marginLeft="@dimen/margin_feed_cell"
android:layout_marginRight="@dimen/margin_feed_cell"
android:orientation="horizontal"
tools:showIn="@layout/content_feed">
<LinearLayout
android:id="@+id/timeLayouts"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:alpha="@dimen/alpha_feed_secondary_text"
android:textSize="@dimen/size_feed_secondary_text"
android:id="@+id/startTimeText"
tools:text="8:00 AM"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:alpha="@dimen/alpha_feed_secondary_text"
android:textSize="@dimen/size_feed_secondary_text"
android:id="@+id/endTimeText"
tools:text="10:00 AM"/>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/margin_feed_cell_text"
android:layout_toRightOf="@+id/timeLayouts"
android:layout_centerVertical="true"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/margin_bottom_feed_cell_title"
android:textSize="@dimen/size_feed_cell_title"
android:textStyle="bold"
android:id="@+id/titleText"
tools:text="Event title"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:alpha="@dimen/alpha_feed_secondary_text"
android:textSize="@dimen/size_feed_secondary_text"
android:id="@+id/captionText"
tools:text="Event caption"/>
</LinearLayout>
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginLeft="@dimen/margin_feed_cell_text"
tools:text=""/>
</RelativeLayout>
content_feed.xml
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.RecyclerView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/feedRecycler"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:listitem="@layout/cell_feed"
tools:showIn="@layout/activity_feed"/>
您想要的功能称为 "Support for sample data",最近在 Google I/O 2017 年活动中宣布。 This 直接 link 到 Tor Norbye 介绍新功能的确切时间。
例如,将以下内容应用于布局项:
tools:text="@tools:sample/lorem"
将在预览中产生以下输出 window:
应用这个:
tools:text="@tools:sample/date_day_of_week"
将在预览中产生此输出 window:
您也可以使用自定义数据填充它。 This blog post 演示了如何执行此操作的完整示例。首先,右键单击您的应用程序模块并选择 New | Sample Data directory
。
然后您将在 sampledata
目录中创建一个包含以下内容的 activity_log.json
文件:
{
"activities" : [
{
"icon": "@sample/activity_icons[ic_biking.png]",
"description": "Biking",
"location" : "Pleasant Hill, CA",
"distance": "48 miles",
"date": "Yesterday"
},
// other items here
]
}
然后您可以通过以下方式将此数据应用到您的布局中:
tools:src="@sample/activity_log.json/activities/icon"
tools:src="@sample/activity_log.json/activities/distance"
这将在预览中产生以下输出 window:
有关该主题的更多详细信息,请查看 Mark Allison 的 "Tool Time" 系列文章。
我知道当你设置
tools:text="Sample text"
在 TextView
中,您会在 Android Studio 的预览模式下看到示例文本,但不会在实际应用中看到。我想对 RecyclerView
中的项目执行此操作,但我似乎做不到。这是我到目前为止所做的:
在 RecyclerView(名为 content_feed)中:
tools:listitem="@layout/cell_feed"
在单元格(名称cell_feed)中:
tools:showIn="@layout/content_feed"
这是 xml
个文件:
cell_feed.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="@dimen/height_feed_cell"
android:layout_marginLeft="@dimen/margin_feed_cell"
android:layout_marginRight="@dimen/margin_feed_cell"
android:orientation="horizontal"
tools:showIn="@layout/content_feed">
<LinearLayout
android:id="@+id/timeLayouts"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:alpha="@dimen/alpha_feed_secondary_text"
android:textSize="@dimen/size_feed_secondary_text"
android:id="@+id/startTimeText"
tools:text="8:00 AM"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:alpha="@dimen/alpha_feed_secondary_text"
android:textSize="@dimen/size_feed_secondary_text"
android:id="@+id/endTimeText"
tools:text="10:00 AM"/>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/margin_feed_cell_text"
android:layout_toRightOf="@+id/timeLayouts"
android:layout_centerVertical="true"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/margin_bottom_feed_cell_title"
android:textSize="@dimen/size_feed_cell_title"
android:textStyle="bold"
android:id="@+id/titleText"
tools:text="Event title"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:alpha="@dimen/alpha_feed_secondary_text"
android:textSize="@dimen/size_feed_secondary_text"
android:id="@+id/captionText"
tools:text="Event caption"/>
</LinearLayout>
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginLeft="@dimen/margin_feed_cell_text"
tools:text=""/>
</RelativeLayout>
content_feed.xml
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.RecyclerView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/feedRecycler"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:listitem="@layout/cell_feed"
tools:showIn="@layout/activity_feed"/>
您想要的功能称为 "Support for sample data",最近在 Google I/O 2017 年活动中宣布。 This 直接 link 到 Tor Norbye 介绍新功能的确切时间。
例如,将以下内容应用于布局项:
tools:text="@tools:sample/lorem"
将在预览中产生以下输出 window:
应用这个:
tools:text="@tools:sample/date_day_of_week"
将在预览中产生此输出 window:
您也可以使用自定义数据填充它。 This blog post 演示了如何执行此操作的完整示例。首先,右键单击您的应用程序模块并选择 New | Sample Data directory
。
然后您将在 sampledata
目录中创建一个包含以下内容的 activity_log.json
文件:
{
"activities" : [
{
"icon": "@sample/activity_icons[ic_biking.png]",
"description": "Biking",
"location" : "Pleasant Hill, CA",
"distance": "48 miles",
"date": "Yesterday"
},
// other items here
]
}
然后您可以通过以下方式将此数据应用到您的布局中:
tools:src="@sample/activity_log.json/activities/icon"
tools:src="@sample/activity_log.json/activities/distance"
这将在预览中产生以下输出 window:
有关该主题的更多详细信息,请查看 Mark Allison 的 "Tool Time" 系列文章。