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

"-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

Kotlin编程之AndroidStudio(包括3.0与2.x版本)配置与使用 - hexingen的博客
- 博客频道 - CSDN.NET

hexingen的博客

【活动】2017 CSDN博客专栏评选

&nbsp

【5月书讯】流畅的Python,终于等到你!
   &nbsp

CSDN日报20170522 ——《从个人习惯到真正的好方法》

   &nbsp

如何看待 Kotlin 成为 Android 官方支持开发语言?

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

标签:
javaandroidKotlinandroid-studio

2017-05-22 10:20
178人阅读
评论(0)
收藏
举报

本文章已收录于:

.embody{
padding:10px 10px 10px;
margin:0 -20px;
border-bottom:solid 1px #ededed;
}
.embody_b{
margin:0 ;
padding:10px 0;
}
.embody .embody_t,.embody .embody_c{
display: inline-block;
margin-right:10px;
}
.embody_t{
font-size: 12px;
color:#999;
}
.embody_c{
font-size: 12px;
}
.embody_c img,.embody_c em{
display: inline-block;
vertical-align: middle;
}
.embody_c img{
width:30px;
height:30px;
}
.embody_c em{
margin: 0 20px 0 10px;
color:#333;
font-style: normal;
}


分类:

Android(25)

作者同类文章X

Kotlin(1)

作者同类文章X

版权声明:本文为博主原创文章,未经博主允许不得转载。

Android Studio 3.0以下版本配置



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

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

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

安装完后,重启Android Studiio。

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

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

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

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

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

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

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

5. 配置好的Projcet的Gralde如下

6. 配置好的module的Gradle如下

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

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

运行效果如下

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文件和Java文件存放路径相似,存放在src/main/java目录下。

3. 在项目中添加Kotlin:

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

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

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。

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 FloatingActionButton
fab.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
}
时间: 2024-11-05 20:02:42

Kotlin编程之AndroidStudio(包括3.0与2.x版本)配置与使用的相关文章

Python Flask高级编程之从0到1开发《鱼书》精品项目 学习 教程??

Python Flask高级编程之从0到1开发<鱼书>精品项目 学习教程 一 .安装环境我们使用 flask web框架,并用 sqlalchemy来做数据库映射,并使用 migrate做数据迁移. $ pip install flask $ pip install SQLAlchemy==0.7.9 $ pip install flask-sqlalchemy $ pip install flask-migrate$ pip install sqlalchemy-migrate 二.建立项目

linux网络编程之shutdown() 与 close()函数详解

linux网络编程之shutdown() 与 close()函数详解 参考TCPIP网络编程和UNP: shutdown函数不能关闭套接字,只能关闭输入和输出流,然后发送EOF,假设套接字为A,那么这个函数会关闭所有和A相关的套接字,包括复制的:而close能直接关闭套接字. 1.close()函数 [cpp] view plain copy print? <span style="font-size:13px;">#include<unistd.h> int 

QT核心编程之Qt线程 (c)

QT核心编程之Qt线程是本节要介绍的内容,QT核心编程我们要分几个部分来介绍,想参考更多内容,请看末尾的编辑推荐进行详细阅读,先来看本篇内容. Qt对线程提供了支持,它引入了一些基本与平台无关的线程类.线程安全传递事件的方式和全局Qt库互斥量允许你从不同的线程调用Qt的方法.Qt中与线程应用相关的类如表6所示. 表6 Qt中与线程相关的类 使用线程需要Qt提供相应的线程库的支持,因此,在编译安装Qt时,需要加上线程支持选项. 当在Windows操作系统上编译Qt时,线程支持是在一些编译器上的一个

[深入浅出WP8.1(Runtime)]网络编程之HttpClient类

12.2 网络编程之HttpClient类 除了可以使用HttpWebRequest类来实现HTTP网络请求之外,我们还可以使用HttpClient类来实现.对于基本的请求操作,HttpClient类提供了一个简单的接口来处理最常见的任务,并为身份验证提供了适用于大多数方案的合理的默认设置.对于较为复杂的 HTTP 操作,更多的功能包括:执行常见操作(DELETE.GET.PUT 和 POST)的方法:获取.设置和删除 Cookie 的功能:支持常见的身份验证设置和模式:异步方法上提供的 HTT

GPS模块编程之NMEA0183协议

NMEA 0183是美国国家海洋电子协会(National Marine Electronics Association)为海用电子设备制定的标准格式.现在已经成为GPS导航设备统一的RTCM(Radio Technical Commission for Maritime services)标准协议. 下图是我调试用的GPS芯片,是深圳一家公司生产的.基本上接上天线,供电引脚电压正常的话,就可以通过串口读取GPS数据了.所以GPS编程最主要的是解析数据,要解析数据就得了解协议格式. 下面一组数据

【转】JAVA网络编程之Socket用法

JAVA网络编程之Socket用法 分类: JAVA2012-08-24 15:56 710人阅读 评论(0) 收藏 举报 在客户/服务器通信模式中,客户端需要主动建立与服务器连接的Socket,服务器端收到客户端的连接请求,也会创建与客户端连接的Socket.Socket可以看做是通信连接两端的收发器,客户端和服务店都通过Socket来收发数据. 1.构造Socket public Socket() 通过系统默认类型的 SocketImpl 创建未连接套接字 public Socket(Str

一次没有最后期限的编程之旅

今年上半年,是我工作以来最繁忙的六个月,总之遇到了最艰难的教程.最冗长的文档.最繁琐的代码以及最窘迫的合作,最终的极度疲劳成了压垮了我的最后一根稻草. 那年杭州,接连40摄氏度以上的连续高温,忽然一天39度,竟然觉得整个世界都清凉了.人,就是这么犯贱,稍有舒缓,便全然忘记曾经的抓狂. “写一个Apple Watch APP玩玩”,忽然闪过这么一个念头.这对执着于<证明论>和<集合论>的苦行者而言,浮现的不过是一次短暂的旅行. 旅行,不是迁移,抑或流浪,终究是要回归的. 记得还是在2

网络编程之HttpClient类(转)

12.2 网络编程之HttpClient类 除了可以使用HttpWebRequest类来实现HTTP网络请求之外,我们还可以使用HttpClient类来实现.对于基本的请求操作,HttpClient类提供了一个简单的接口来处理最常见的任务,并为身份验证提供了适用于大多数方案的合理的默认设置.对于较为复杂的 HTTP 操作,更多的功能包括:执行常见操作(DELETE.GET.PUT 和 POST)的方法:获取.设置和删除 Cookie 的功能:支持常见的身份验证设置和模式:异步方法上提供的 HTT

网络编程之TCP编程

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption