Tools: text para artículos de RecyclerView
Sé que cuando usted fija
tools:text="Sample text"
Dentro de un TextView
, verá el texto de ejemplo en modo Vista previa en Android Studio, pero no dentro de la aplicación real. Me gustaría hacer esto por artículos en un RecyclerView
, pero no puedo ser capaz de hacerlo. Esto es lo que he hecho hasta ahora:
- Desactivar la conversión de palabras en un TextView multi-línea de Android
- Obtener el tamaño de un texto en TextView
- Etiqueta vertical (girada) en Android
- Android Fuente personalizada Spannable Tipo de letra
- Espaciado de párrafos con SpannableStringBuilder en TextView
En el RecyclerView (denominado content_feed):
tools:listitem="@layout/cell_feed"
En la celda (nombre cell_feed):
tools:showIn="@layout/content_feed"
Aquí están los archivos 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"/>
- Android: ¿Cómo crear un TextView circular?
- Android scrollview autoscrolling como texto se añade
- Fórmula química en Android
- TextView setScaleX () / setScaleY () y setTextIsSelectable (true) selección
- Finalizar el problema de la elipse con TextViews
- Cómo insertar texto extraíble
- Cómo formatear una actividad de otra actividad mediante opciones de menú
- Uso de varios colores de texto en la vista de texto de Android
La función que desea se denomina "Soporte para datos de ejemplo" y se anunció recientemente en el evento Google IO 2017. Este es un enlace directo al minuto exacto en el que Tor Norbye introduce la nueva característica.
Por ejemplo, aplicando el siguiente elemento de diseño:
tools:text="@tools:sample/lorem"
Resultará en la siguiente salida en la ventana de vista previa:
Aplicando esto:
tools:text="@tools:sample/date_day_of_week"
Resultará en esta salida en la ventana de vista previa:
También puede llenarlo con sus datos personalizados. Tener por ejemplo el archivo activity_log.json
en el proyecto con el siguiente contenido:
{ "activities" : [ { "icon": "@sample/activity_icons[ic_biking.png]", "description": "Biking", "location" : "Pleasant Hill, CA", "distance": "48 miles", "date": "Yesterday" }, // other items here ] }
Entonces puede aplicar estos datos a su diseño de esta manera:
tools:src="@sample/activity_log.json/activities/icon" tools:src="@sample/activity_log.json/activities/distance"
Esto resultará en la siguiente salida en la ventana de vista previa:
- Dibuja un arco con un SweepGradient en Android
- ¿Cómo configurar la aplicación para que sea sólo de retrato?