我是安卓的初学者。我有这样的问题Android DataBinding 从哪里获取上下文?需要以正确的方式使用数据绑定获取格式化文本视图的日期和时间的上下文。但是我不明白答案。任何人都可以帮助我以正确的方式从数据绑定中获取上下文。
格式化日期和时间的最佳方式是使用字符串格式化。例如,你可以使用这个:
<TextView android:text="@{@string/dateFormat(user.birthday)}" .../>
其中dateFormat是这样的资源:
<string name="dateFormat">%1$td/%1$tm/%1$tY</string>
而且生日很长。您应该查看日期格式化程序文档以获取更多与时间和日期相关的格式化信息。
在Android DataBinding 中从哪里获取上下文?,我给出了一个选项,但暗示了一个现在也可用的选项。您可以使用内置context
变量,即根视图的上下文:
<TextView android:text="@{Converters.formatDate(context, user.birthday, dateFlags)}" .../>
然后你的 Converters 类会有这样的东西:
public class Converters {
public static String formatDate(Context context, long timeMillis, int dateFlags) {
return DateUtils.formatDateTime(view.getContext(), timeMillis,
dateFlags)
}
}
但我推荐第一种,因为它简单、灵活并且使用较少的代码。它不会将您的日期和时间格式固定为单一语言环境。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句