继续使用数据绑定更新视图

时间:2018-07-17 07:40:40

标签: android android-layout android-databinding android-livedata

我正在使用数据绑定将数据设置为recyclerview item,并且正在将@BindingAdapter用于自定义属性。 现在,我想每秒更新一次textview的文本。 textview显示的是一个与时间戳相关的文本(以前),我通过传递时间戳创建了一个@BindingAdapter函数,该函数非常适合一次设置文本,但是我想每秒钟更新一次

<TextView
        android:id="@+id/tvTime"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="12sp"
        android:textStyle="italic"
        app:timeago="@{order.DateStamp}"
        app:layout_constraintBottom_toTopOf="@id/tvOrderId"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        tools:text="Just now" />

以下是我的绑定适配器

@BindingAdapter("timeago")
    public static void setTimeAgo(TextView view, long time) {
        view.setText(getTimeAgo(time));
    }

this is my layout file

1 个答案:

答案 0 :(得分:0)

您可以为此使用EchoBind类BindingAdapter。

从XML到模型/适配器或从模型/适配器到XML的绑定应采用两种方式。

要获取详细的文档,请参阅这些link1link2