美文网首页
Kotlin开发中传递对象方法

Kotlin开发中传递对象方法

作者: 光芒121 | 来源:发表于2018-11-20 01:16 被阅读0次

    使用Java开发时候,页面之间的跳转都是采用Serializable和Parseable进行传递,Kotlin也可以采用这种方式实现传递,但是Kotlin里面的Bean中要去重写一堆Parseable的方法,代码看起来就特别臃肿,我就采用下面一种方式进行传递,代码很简洁明了。
    Kotlin写法:

    data class Datas(
            var checkCarDealerSimilarResponseList: List<CheckCarDealerSimilarResponse> = listOf(),
            var similarReason: String = ""
    ) : CommonConfig()
    

    继承的CommonConfig代码:

    
    open class CommonConfig {
    
        companion object {
    
            fun <T> fromJson(json: String, clazz: Class<T>): T {
                return Gson().fromJson(json, clazz)
            }
        }
    
        fun toJson(): String {
            return Gson().toJson(this)
        }
    }
    

    下面是我的页面之间的传递方法:

    // 传递
    var listData: Datas = Datas()
    val intent = Intent(this, SearchActivity::class.java)
    intent.putExtra("data", listData.toJson())
    startActivity(intent)
    
    // SearchActivity页面接收:
    private fun getExtra() {
            val datas = CommonConfig.fromJson(intent.getStringExtra("data"), Datas::class.java)
    }
    

    使用方法:
    1、在你的data class 中去继承CommonConfig()
    2、传递时候调用 .toJson()方法
    3、接收代码中用Gson()生成对应的实体就行了,非常简单。

    相关文章

      网友评论

          本文标题:Kotlin开发中传递对象方法

          本文链接:https://www.haomeiwen.com/subject/uzgzfqtx.html