浅尝Hello World
本文和大家一起共同在Androidstudio中,创建第一个使用Kotlin语言写的Android应用demo;
基础要求:
(1)android studio 版本最好是2.3以上;
(2)有网络,因为需要添加Kotlin插件;
2.实现步骤:
(1)按照正常的步骤创建一个demo;
(2)在Androidstudio的Setting-->Plugins中添加Kotlin插件;
(2)gradle的配置步骤:
1)app的gradle的配置:添加
2)project gradle的配置:
说明:如果是第一次配置的话,同步的时间会因为网络的状态不同而不同;公司网络太垃圾了。
布局依然用xml布局吧,咱们专心看代码:
3)先看实现hello Kotlin 的Java代码:
packagecom.hmsts.kotlindemo;
importandroid.support.v7.app.AppCompatActivity;
importandroid.os.Bundle;
importandroid.widget.TextView;
public classMainActivityextendsAppCompatActivity{
privateTextViewmTv;
@Override
protected voidonCreate(BundlesavedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
initData();
}
private voidinitView() {
mTv= (TextView) findViewById(R.id.tv_hello);
}
private voidinitData() {
mTv.setText("hello kotlin!");
}
}
上图是转化Java代码到Kotlin语言:转换后的代码是:
packagecom.hmsts.kotlindemo
importandroid.support.v7.app.AppCompatActivity
importandroid.os.Bundle
importandroid.widget.TextView
classMainActivity: AppCompatActivity() {
private varmTv:TextView? =null
override funonCreate(savedInstanceState:Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
initView()
initData()
}
private funinitView() {
mTv= findViewById(R.id.tv_hello)asTextView
}
private funinitData() {
mTv!!.text="hello kotlin!"
}
}
哈哈,这个看着有点复杂,其实这种不是正宗的Kotlin语言;下边的代码才是:
packagecom.hmsts.kotlindemo
importandroid.os.Bundle
importandroid.support.v7.app.AppCompatActivity
importkotlinx.android.synthetic.main.activity_main.*
classMainActivity: AppCompatActivity() {
override funonCreate(savedInstanceState:Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
tv_hello.setText(R.string.Hello_Kotlin)
}
}
有没有很简单?
先看看布局文件和string文件代码:
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.hmsts.kotlindemo.MainActivity">
android:id="@+id/tv_hello"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
string 文件代码:
KotlinDemo
Hello Kotlin
相对于Java语言,从这个demo中我们可以总结一下:
(1)Kotlin和Java是客户混淆使用的;
(2)在代码中,Kotlin是不写分号的;
(3)Kotlin代码中可以自动的找到相关的控件的,不用使用findViewByid()这样的语句的,所以ButterKnife这样的插件在Kotlin中没有用武之地的;
(4)类的命名:
classMainActivity: AppCompatActivity()
关键字+类名称+:+父类名;
(5)重写方法的格式:
override funonCreate(savedInstanceState:Bundle?)
重写的关键字: override +fun +重写的方法名
(6)控件的获取和使用:
tv_hello.setText(R.string.Hello_Kotlin)
直接使用xml文件中的命名,进行操作;
总结:通过这个简单的demo可以看出,Kotlin相比于Java是简便的,但是具体的规则还是需要在实际的开发中灵活应用;
领取专属 10元无门槛券
私享最新 技术干货