Kotlin 在 Android 中的应用

1. 读取网络API 数据

var result= URL("http://www.cnblogs.com/-Tiger/").readText()

2.Post 数据到 WebAPI

fun readFromNet(path: String): String {

    println(basePath + path)
    return URL(basePath + path).readText()
}

fun postToNet(path: String, data: String): String {

    var conn = URL(basePath + path).openConnection() as HttpURLConnection
    with(conn) {
        requestMethod = "POST"
        doOutput = true
    }
    conn.outputStream.write(data.toByteArray())
    return if (conn.responseCode == 200){
           BufferedReader(InputStreamReader(conn.inputStream)).readText()
    }
    else "Null"
}

3.启动活动

startActivity(Intent(MainActivity@this, SecondActivity::class.java))
//或者
startActivity(Intent(this, SecondActivity::class.java))

4.Kotlin 匿名内部类对象引用当前Activity的this

this@MainActivity     或者  MainActivity@this

5.Json 数据解析

inline fun <reified T : Any> decodeJson(s: String): List<T> {

    var list = mutableListOf<T>()
    var ja = JsonParser().parse(s).asJsonArray

    ja.forEach { list.add(Gson().fromJson(it, T::class.java)) }
    return list
}

6.启动活动

fun SA(cla: Class<*>) {

    startActivity(Intent(this, cla))
}

7. 定义静态方法

7.1 当全部都是静态方法的情况下

class 关键名改为 object

7.2 一部分是静态方法时候

使用 companion object { } 包裹方法

Last modification:July 12th, 2020 at 07:19 pm