【kotlin】lamda语法兼容问题

1、kotlin的lamda语法有很多,特别是foreach语法:

kotlin的forEach语法.png

众多的语法中是不是选取自己喜欢的语法就好了呢?答案肯定是否定的。我们接下来看看博主的配置:

gradle配置.png

现在AS版本为3.1版本,gradle配置为4.4-all,tool配置为:com.android.tools.build:gradle:3.1.0,这里需要说明的是,更新版本过后其某些包特别是glide最新的4.6.1无法编译完成,所以最好是按照AS3.0的配置来配置应用,gradle配置为4.1-all,tool配置为上图所示3.0.0。

2、kotlin循环代码报错:

会报错的代码.png

这里是在fragment中接口回调所调用的代码块,在接口回调中直接调用此方法会在Android版本6.0以下运行报以下错误:

运行时报错.png

3、kotlin循环代码换种写法:

可以兼容的写法.png

此写法可以兼容所有的Android版本,在运行过程中没有报错。

4、说明

bug实现请查看此链接:https://github.com/StormKid/kotlin-err-sample/tree/master

已经向jetbrains与google提了bug issue 地址:https://youtrack.jetbrains.com/issue/KT-23488

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,112评论 25 709
  • Google在今年的IO大会上宣布,将Android开发的官方语言更换为Kotlin,作为跟着Google玩儿An...
    蓝灰_q阅读 77,061评论 31 489
  • 1 ES架构分析 http://www.code123.cc/2582.html
    微山抹云阅读 1,176评论 0 0
  • 有时 想去的地方 不是因为它景色有多美 而是 那个能陪你一起出行的人 有多么重要 有时 我们向往的 是一生都不可能...
    桂花上酸菜阅读 1,501评论 2 21
  • 1.六月的最后一天 文/嫣然 雷声隆隆的下午。干旱的六月 终于有了水声,乡音有了久违的笑颜 中年的阿...
    闪亮的写作者阅读 1,631评论 0 2