国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Android > 正文

用Kotlin實(shí)現(xiàn)Android點(diǎn)擊事件的方法

2019-12-12 02:43:06
字體:
供稿:網(wǎng)友

近期,Google宣布Kotlin成為了Android一級開發(fā)語言。于是就剛剛簡單的研究了一下,查資料的時(shí)候發(fā)現(xiàn)現(xiàn)成的資料還是很少的,于是決定自己記錄一下,方便以后查看,也供其他人一個(gè)參考。

在android中,點(diǎn)擊事件大致分為三種寫法:

1. 匿名內(nèi)部類。

2. Activity實(shí)現(xiàn)全局OnClickListener接口。

3. 指定xml的onClick屬性。

今天用Kotlin實(shí)現(xiàn)這三種方式實(shí)現(xiàn)點(diǎn)擊事件

匿名內(nèi)部類:這種方式最簡單

override fun onCreate(savedInstanceState: Bundle?) {   super.onCreate(savedInstanceState)   setContentView(R.layout.activity_main)   bt_click.setOnClickListener {     Toast.makeText(this,"點(diǎn)擊了",Toast.LENGTH_SHORT).show();   } }

這里不需要new OnClicklistener。

全局實(shí)現(xiàn)OnClickListener接口:

class MainActivity : AppCompatActivity(), View.OnClickListener { override fun onClick(v: View?) {   when (v?.id) {     R.id.bt_click ->       Toast.makeText(this, "點(diǎn)擊了", Toast.LENGTH_SHORT).show()   } } override fun onCreate(savedInstanceState: Bundle?) {   super.onCreate(savedInstanceState)   setContentView(R.layout.activity_main)   bt_click.setOnClickListener(this) }}

這種方法與java的區(qū)別是沒有implements關(guān)鍵字表示實(shí)現(xiàn)接口。

when就相當(dāng)于java中的switch。

“:”符號改為了“->”。

指定onClick屬性:

fun click(v: View?) {   when (v?.id) {     R.id.bt_click ->       Toast.makeText(this, "點(diǎn)擊了", Toast.LENGTH_SHORT).show()   } } override fun onCreate(savedInstanceState: Bundle?) {   super.onCreate(savedInstanceState)   setContentView(R.layout.activity_main) }
<Button   android:id="@+id/bt_click"   android:layout_width="match_parent"   android:layout_height="50dp"   android:onClick="click"   android:text="點(diǎn)擊" />

以上就是這三種點(diǎn)擊事件的寫法。如果有語法不懂,關(guān)鍵字不知道什么意思可以去查一下官方文檔。希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持武林網(wǎng)。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 古蔺县| 沾化县| 平遥县| 永修县| 牙克石市| 广德县| 黑水县| 光泽县| 靖州| 江永县| 盐池县| 肥西县| 呼图壁县| 苍山县| 贵阳市| 博乐市| 邢台市| 禹州市| 屯昌县| 韶关市| 宣恩县| 南丹县| 大方县| 衡山县| 和林格尔县| 开封市| 满城县| 琼中| 镇康县| 新密市| 合阳县| 泉州市| 巴中市| 连山| 怀安县| 融水| 许昌县| 长岭县| 西吉县| 上杭县| 望谟县|