Android开发——Kotlin开发APP使用笔记
2023-02-18 16:36:37 时间
之前一直使用java来开发Android项目,学了新的kotlin语言,前来试一试,并说一下kotlin对Android的一些功能增强
创建项目
我使用的是Android Studio3.0+,所以默认就支持kotlin
创建项目的时候记得勾选kotlin支持
找到实例与设置监听器
以往我们是通过findviewbyid来找到实例,而kotlin中提供了一种更为快捷的方式,只需要一行代码,之后我们就可以直接使用布局里面的定义的各种实例了
像平常一样,我们可以使用实例来更改控件的内容,同时,这个按钮也可以作为监听器的判断。
以往我们的点击监听器,使用switch或者if语句来判断点击的控件,从而执行不同的操作。而kotlin中,直接使用实例判断,具体的代码在下面的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.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/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就是布局文件的按钮实例
//输入btn_test会自动增加一行import kotlinx.android.synthetic.main.activity_main.*
btn_test.setOnClickListener(this)
}
}
跳转
val intent = Intent(this, SettingActivity::class.java)
startActivity(intent)
直接实现抽象类中接口方法
使用object来实现抽象类接口方法
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) {
}
}
相关文章
- 新东方推出线下自习室预约小程序,微搭低代码平台减少50%工作量
- 吐槽 Android的WebView的pauseTimers方法神坑 webview加载卡住
- 【开源库推荐】#1 SpiderMan 可快速查看Android闪退崩溃日志
- Android Studio 下载jcenter依赖失败问题及解决
- Android开发过程中的坑及解决方法收录(7)
- Android开发——RecyclerView实现下载列表
- Android开发——实现子线程更新UI
- 星之小说下载器Android版
- Android开发——Toolbar常用设置
- Android开发——Kotlin开发APP使用笔记
- Android开发模版代码(4)——状态栏设置
- 优化Recorder H5录音:可边录边转码上传服务器,支持微信提供Android IOS Hybrid App源码
- Android保存的文件显示到文件管理的最近文件和下载列表中
- HTML5网页录音和上传到服务器,支持PC、Android,支持IOS微信
- Hybrid小程序混合开发之路 - 数据交互
- html5录音支持pc和Android、ios部分浏览器,微信也是支持的,JavaScript getUserMedia
- Android Material Design控件使用(四)——下拉刷新 SwipeRefreshLayout
- Android Material Design控件使用(三)——CardView 卡片布局和SnackBar使用
- Taro小程序跨端开发入门实战
- Android开发过程中的坑及解决方法收录(六)