Kotlin编程开发Android运用程序的相关介绍

  • Kotlin编程之AndroidStudio(包括3.0与2.x版本)配置与使用
  • Kotlin编程开发Android运用程序(Volley+Gson依赖库)
  • Kotlin编程之Kotlin Android Extensions(扩展插件)
  • Kotlin编程之Glide v4 Generated API(Unresolved reference GlideApp)
  • Kotlin Android Extensions+Android MVP项目(RxJava+Rerotfit+OkHttp+Glide)
  • Anko Layout+MVP(Glide,Retrofit,OkHttp,RxJava)开发Android运用程序

Kotlin编程之AndroidStudio(包括3.0与2.x版本)配置与使用_第1张图片

Android Studio 3.0以下版本配置


这使用的Android Studio 2.3版本,因此,需要添加Kotlin插件。

在Android Studio中添加Kotlin语言依赖包

kotlin 标准库依赖:File–> Setting–>Plugins–>搜索Kotlin–>安装,如下所示:

Kotlin编程之AndroidStudio(包括3.0与2.x版本)配置与使用_第2张图片

安装完后,重启Android Studiio。

原本的AndroidStudio 存Java语法项目转成支持Kotlin语法的项目

以下几步操作,AndroiStudio自动下载进行配置,以免手动配置出错。

1. 将Java文件转换成kotlin文件:

打开Java文件,然后点击Code–>Convert Java File to Kotlin

Kotlin编程之AndroidStudio(包括3.0与2.x版本)配置与使用_第3张图片

2. 添加kotlin的配置:configue–>android Gralde:

Kotlin编程之AndroidStudio(包括3.0与2.x版本)配置与使用_第4张图片

3. 选中添加的配置,这里选择当前包含Kotlin的项目中添加插件

Kotlin编程之AndroidStudio(包括3.0与2.x版本)配置与使用_第5张图片

4. 配置好后,在Project的Gradle中添加sync now,AndroidStudio将会自动下载配置

5. 配置好的Projcet的Gralde如下

Kotlin编程之AndroidStudio(包括3.0与2.x版本)配置与使用_第6张图片

6. 配置好的module的Gradle如下

Kotlin编程之AndroidStudio(包括3.0与2.x版本)配置与使用_第7张图片

解读MainActivity中,Java转成Kotlin后的代码

/** *  一个类继承父类和实现接口的方式; class 类名 :超类名(),接口名 */class MainActivity : AppCompatActivity() {    /**     * override用于覆写继承父类或者实现接口中方法。     *     * fun 用于标识方法     *     * 参数形式: 参数名: 类型     *     *  ? 是用于指定可以为空对象     *     */    override fun onCreate(savedInstanceState: Bundle?) {        super.onCreate(savedInstanceState)        setContentView(R.layout.activity_main)    }}

运行效果如下

Kotlin编程之AndroidStudio(包括3.0与2.x版本)配置与使用_第8张图片

Android Studio 3.0创建Kotlin项目


Android Studio 3.0及其以版本上是支持Kotlin开发的。

1. 下载和安装Android Studio 3.0

Android Studio 3.0下载: 进入下载页面

Android Studio预先版本是可以与电脑现有安装的AndroidStudio版本共存 , 详情请看多个AndroidStudio共存安装教程.

2. 使用AndroidStudio创建Kotlin的项目

在AndroidStudio 中 ,在Welcom toAndroid Studio页面中点击 Start new Android Studio project或者在原本工作区间中点击File–>New –>New Projcet 。接下来,在Creat New Projcet中,勾选上include Kotlin Support,最后点击Next一路走下去。

Kotlin编程之AndroidStudio(包括3.0与2.x版本)配置与使用_第9张图片

最后Kotlin文件和Java文件存放路径相似,存放在src/main/java目录下。

3. 在项目中添加Kotlin:

在File–>New –>在菜单中进行选择文件类型,如下如图所示:

Kotlin编程之AndroidStudio(包括3.0与2.x版本)配置与使用_第10张图片

如上图所示向导进行操作后,在New Android Activity页面中选择Kotlin作为开发语言,然后一路next。

Kotlin编程之AndroidStudio(包括3.0与2.x版本)配置与使用_第11张图片

Android Studio是很强大的,还提供其他方式创建Kotlin文件

点击Flie–>New –>Kotlin File/Class 创建一个基本文件。在New Kotlin File/Class 弹窗中,输入文件名,可以从多中Kind选择一种类型。不必要担心创建错文件类型,在编写代码中声明类型时候,文件会自动切换到声明所对应的类型。

修改Kotlin所存放的路径

默认情况下,Kotlin文件存放在src/main/java/,与java在同一个文件夹下。若是需要隔开java文件和Kotlin文件,指定一个专门存放Kotlin文件的文件夹。例如,在src/main路径下创建一个kotlin目录,然后需要在Gralde指定sourceSets配置:

android {   sourceSets {       main.java.srcDirs += 'src/main/kotlin'   }}

3. 转换Java代码到Kotlin代码

在项目中,打开一个java文件,点击最上面窗口中Code–>Convert Java File to Kotlin File

一种方式是,在Kotlin文件中拷贝Java代码,然后出现提示,将convert the code toKotlin,勾选中选择下次不提示该弹窗,这样也实现Java代码转成Kotlin。

Kotlin编程之AndroidStudio(包括3.0与2.x版本)配置与使用_第12张图片

4. 在Kotlin语言中使用Android API

Kotlin与Java语言是互通的,交互使用。因此,Kotlin调用Android API与Java调用方式类似。

这里列举几个案例,进行比对(来源官方)

编写Activity:

  • Java:
public class MyActivity extends AppCompatActivity {  @Override  protected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity);  }}
  • Kotlin:
class MyActivity : AppCompatActivity() {  override fun onCreate(savedInstanceState: Bundle?) {    super.onCreate(savedInstanceState)    setContentView(R.layout.activity)  }}

为View设置点击事件

  • Java:
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);fab.setOnClickListener(new View.OnClickListener() {  @Override  public void onClick(View view) {    ...  }});
  • Kotlin:
val fab = findViewById(R.id.fab) as FloatingActionButtonfab.setOnClickListener {  ...}

创建item点击事件

  • Java:
private BottomNavigationView.OnNavigationItemSelectedListener mOnNavigationItemSelectedListener    = new BottomNavigationView.OnNavigationItemSelectedListener() {  @Override  public boolean onNavigationItemSelected(@NonNull MenuItem item) {    switch (item.getItemId()) {      case R.id.navigation_home:        mTextMessage.setText(R.string.title_home);        return true;      case R.id.navigation_dashboard:        mTextMessage.setText(R.string.title_dashboard);        return true;    }    return false;  }};
  • Kotlin:
private val mOnNavigationItemSelectedListener    = BottomNavigationView.OnNavigationItemSelectedListener { item ->  when (item.itemId) {    R.id.navigation_home -> {      mTextMessage.setText(R.string.title_home)      [email protected] true    }    R.id.navigation_dashboard -> {      mTextMessage.setText(R.string.title_dashboard)      [email protected] true    } } false}

更多相关文章

  1. UE4打包安卓项目遇到UATHelper: Packaging (Android (ETC1)): ER
  2. [Android][Audio] audio_policy.conf文件分析
  3. 【实习项目记录】(三)调整网络图片固定宽高
  4. Android下的文件访问权限
  5. Android 读取raw下的txt文件
  6. Android studio cmd命令行操作数据库文件导出,导入
  7. Android中的文件的读取方法
  8. android项目 编译出现"Unsupported major.minor version 52.0"

随机推荐

  1. Android系统上部署usb打印机
  2. busybox应用于android系统
  3. android应用层学习经验
  4. android系统体系结构
  5. Android的webview研究
  6. Android(安卓)Camera 系统框架分析
  7. 深刻解析 Android(安卓)的 AIDL
  8. Android(安卓)开发手记之NDK 编程实例
  9. Android(安卓)核心分析 之七------Servic
  10. Android源代码分析(三) MediaScanner源码