android–Kotlin DataBinding将静态函数传递给布局xml

android–Kotlin DataBinding将静态函数传递给布局xml,第1张

概述在Java中,我可以使用以下命令轻松地将静态函数传递给布局xml:publicstaticStringformatUnixTime(longtimeInSeconds,Stringpattern){SimpleDateFormatsimpleDateFormat=newSimpleDateFormat(pattern,Locale.US);Stringvalue=simpleDateFormat.format(new

在Java中,我可以使用以下命令轻松地将静态函数传递给布局xml:

public static String formatUnixTime(long timeInSeconds, String pattern) {    SimpleDateFormat simpleDateFormat = new SimpleDateFormat(pattern, Locale.US);    String value = simpleDateFormat.format(new Date(timeInSeconds * 1000));    return value;}

在xml中:

androID:text='@{Utils.formatUnixTime(model.start_time, "hh:mm:ss")}'

但我和同伴一起在Kotlin试过,但没有运气.它说

error: cannot find symbolimport my.package.name.HistoryItembindingImpl;                      ^  symbol:   class HistoryItembindingImpl  location: package my.package.name

这是我在kotlin尝试过的

class Utils {    companion object {        fun formatUnixTime(timeInSeconds : Long, pattern: String) : String {            val simpleDateFormat = SimpleDateFormat(pattern, Locale.US)            val value = simpleDateFormat.format(Date(timeInSeconds * 1000))            return value        }    }

并在xml中

androID:text='@{Utils.Companion.formatUnixTime(model.start_time, "hh:mm:ss")}'

真的希望有人可以提供帮助.谢谢!

更新
随着@Max Aves的帮助.我修复了我的代码,下面的代码将起作用.也许它会帮助别人.

class Utils {    companion object {        @JvmStatic        fun formatUnixTime(timeInSeconds : Long, pattern: String) : String {            val simpleDateFormat = SimpleDateFormat(pattern, Locale.US)            val value = simpleDateFormat.format(Date(timeInSeconds * 1000))            return value        }

你可以在xml中使用它

androID:text='@{Utils.formatUnixTime(model.start_time, "hh:mm:ss")}'

解决方法:

您是否尝试过添加@JvmStatic注释?它可能有所帮助
另外,另一种可能的解决方案是使用object而不是class

这些对你有用吗?

总结

以上是内存溢出为你收集整理的android – Kotlin DataBinding将静态函数传递给布局xml全部内容,希望文章能够帮你解决android – Kotlin DataBinding将静态函数传递给布局xml所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/web/1112503.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存