活动是一种可以包含用户界面的组件,主要用于与用户进行交互。——by.第一行代码
Activity,中文译作活动,绝大多数app都将会有超过一个的activity,主要功能是用于显示UI。我们应用中的activity都将会隐式继承Activity类。
1.1建立一个kotlin activity
初次运行程序时单击“Start a new Android Studio project”,弹出以下页面
当然不要忘记去勾选“Include Kotlin support”
点击next进入以下页面
点击next,弹出以下界面,由于要手动建立,因此要选择Add No Activity
点击finish,Android工程构建完成。
然后可以看到工程结构图如下
创建自己的activity,java>>New>>Activity>>Empty Activity
之后弹出,为更好的理解Android工程,不应选中Generate Layout File与Launcher Activity
1.2为activity添加逻辑
之后代码顺序为原书中代码顺序
初始
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.first_layout)
}
}
添加按钮
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.first_layout)
}
}
使用toast:
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val button1: Button? =findViewById<Button>(R.id.button_one)
if (button1 != null) {
button1.setOnClickListener(View.OnClickListener {
Toast.makeText(this,"you clicked Button 1",Toast.LENGTH_SHORT).show()
})
}
}
}
添加menu:
override fun onOptionsItemSelected(item: MenuItem?): Boolean {
if (item != null) {
when(item.itemId){
R.id.add_item ->{
Toast.makeText(this,"You clicked Add",Toast.LENGTH_SHORT).show()
}
R.id.remove_item ->{
Toast.makeText(this,"You clicked Remove",Toast.LENGTH_SHORT).show()
}
}
}
return true
}
使用按键销毁活动:
val button1: Button? =findViewById<Button>(R.id.button_one)
if (button1 != null) {
button1.setOnClickListener(View.OnClickListener {
fun onClick(v:View){
finish()
}
})
}
显示调用intent:
if (button1 != null) {
button1.setOnClickListener(View.OnClickListener {
fun onClick(v:View){
var intent = Intent(this,SecondActivity::class.java )
startActivity(intent)
}
})
}