kotlin_基础1

下载完插件重启app就会看到

完事就可以用了

今天下午看代码有点累了 就来点轻快的 准备学学kotlin

layout:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_second"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context="com.example.iamchan.kotlintest.SecondActivity">
    <TextView
        android:id="@+id/text"
        android:gravity="center"
        android:textSize="20dp"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />
    <Button
        android:id="@+id/btn1"
        android:text="btn"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />
    <Button
        android:id="@+id/btn2"
        android:text="btn2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />
</LinearLayout>

java:

class SecondActivity : AppCompatActivity(),View.OnClickListener {//实现onClick接口

    /*private var name0: String //报错
    private var name1: String = "iamchan" //不报错
    private var name2: String? = null //不报错*/



    /*
    * val属于不可变变量定义 val是关键字 只能赋值一次的变量(常量 类似于java中的final)
    *
    * 是弱类型又不是弱类型
    *
    * */
    val a:Int=10
    val b="aaaaaaaaaaa"
    var d=10
    /*
    *变量
    * */
    var c:String? = null


    /*
    * lateinit 延迟初始化 就是可以不先赋初值
    * */

    private lateinit var text:TextView
    private lateinit var btn1:Button
    private lateinit var btn2:Button

    /*
    *
    * */


    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        /*
        * 加载布局
        * */
        setContentView(R.layout.activity_second)
        /*
        * findViewById
        * */
        text= findViewById(R.id.text) as TextView
        btn1=findViewById(R.id.btn1) as Button
        btn2= findViewById(R.id.btn2) as Button
        /*
        * 设置text
        * */
        text.setText(b)
        /*
        * 监听事件挺简单
        * */
        text.setOnClickListener {
           toast()
        }
        /*
        * 接口方式实现监听事件
        * */
        btn1.setOnClickListener(this)
        btn2.setOnClickListener(this)
    }
    /*
    * 一个toast方法
    * */
    fun toast(){
        Toast.makeText(this,"aaaa",Toast.LENGTH_SHORT).show()//toast
    }
    /*
    * 接口重写方法
    * */


    /*
    * ?和!!的区别 以后会总结的  这个也挺好 以后switch break 可以不用写了
    * */
    override fun onClick(v: View?) {
        when (v?.id){
            R.id.btn1->
                Toast.makeText(this,"btn1",Toast.LENGTH_SHORT).show()//toast
            R.id.btn2->
                Toast.makeText(this,"btn2",Toast.LENGTH_SHORT).show()//toast
        }
    }


}

语法确实简洁了不少

猜你喜欢

转载自blog.csdn.net/iamchan/article/details/84032092