小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Android開發(fā)——Kotlin開發(fā)APP使用筆記

 頭號碼甲 2020-09-22

之前一直使用java來開發(fā)Android項(xiàng)目,學(xué)了新的kotlin語言,前來試一試,并說一下kotlin對Android的一些功能增強(qiáng)

創(chuàng)建項(xiàng)目

我使用的是Android Studio3.0+,所以默認(rèn)就支持kotlin

創(chuàng)建項(xiàng)目的時候記得勾選kotlin支持

找到實(shí)例與設(shè)置監(jiān)聽器

以往我們是通過findviewbyid來找到實(shí)例,而kotlin中提供了一種更為快捷的方式,只需要一行代碼,之后我們就可以直接使用布局里面的定義的各種實(shí)例了

像平常一樣,我們可以使用實(shí)例來更改控件的內(nèi)容,同時,這個按鈕也可以作為監(jiān)聽器的判斷。

以往我們的點(diǎn)擊監(jiān)聽器,使用switch或者if語句來判斷點(diǎn)擊的控件,從而執(zhí)行不同的操作。而kotlin中,直接使用實(shí)例判斷,具體的代碼在下面的MainActivity.java中

switch(v.getId){
case R.id.btn:
//邏輯操作
break;
}
if(v.getId == R.id.btn){
//邏輯操作
}

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
    xmlns:android="http://schemas./apk/res/android"
    xmlns:app="http://schemas./apk/res-auto"
    xmlns:tools="http://schemas./tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.wan.noveldownloader.activity.MainActivity">

<Button
    android:id="@+id/btn_test"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="測試"  />
</android.support.constraint.ConstraintLayout>

MainActivity.java

package com.wan.noveldownloader.activity

import android.os.Bundle
import android.view.View
import com.wan.noveldownloader.R
import kotlinx.android.synthetic.main.activity_main.*

class MainActivity : BaseActivity(),View.OnClickListener {
    override fun onClick(v: View?) {
        when (v) {
//操作
            btn_test -> showToast("htllo")
        }
    }

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
//這里的btn_test就是布局文件的按鈕實(shí)例
//輸入btn_test會自動增加一行import kotlinx.android.synthetic.main.activity_main.*
        btn_test.setOnClickListener(this)
    }
}

跳轉(zhuǎn)

val intent = Intent(this, SettingActivity::class.java)
startActivity(intent)

直接實(shí)現(xiàn)抽象類中接口方法

使用object來實(shí)現(xiàn)抽象類接口方法

val rvAdapter = object : RVAdapter<DownloadingItem>(lists) {

            override fun bindDataToView(holder: RVAdapter.RVViewHolder, position: Int, bean: DownloadingItem, isSelected: Boolean) {

            }

            override fun getItemLayoutID(position: Int, bean: DownloadingItem): Int {
                return 0
            }

            override fun onItemClick(position: Int, bean: DownloadingItem) {

            }
        }

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多