kotin 实现android activity之间的跳转

Posted 伟雪无痕

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了kotin 实现android activity之间的跳转相关的知识,希望对你有一定的参考价值。

一.kotin 简介

Kotlin是由JetBrains设计的开放源码的编程语言,2017年Google IO大会宣布使用Kotlin作为android的官方开发语言,相比较与典型的面相对象的JAVA语言,Kotlin作为一种新式的函数式编程语言,也有人称之为Android平台的Swift语言

二.kotin在android studio中的应用

1.kotin插件安装,启动as后,执行File->Settings->Plugins,搜索kotin进行安装

2.kotin实现Activity

1).新建kotin文件

 2).继承AppCompatActivity,实现onCreate方法

class MainActivity : AppCompatActivity() 
    override fun onCreate(savedInstanceState: Bundle?) 
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    

3).activity跳转的方法

 val intent=Intent();
                    intent.setClass(this,SecondActivity::class.java)
                    startActivity(intent)

三.实现两个activity之前跳转的demo

1.MainActivity.kt及布局activity_main.xml

package com.example.kotlin

import android.content.Intent
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.util.Log
import android.view.View
import android.widget.Button
import android.widget.TextView

class MainActivity : AppCompatActivity(),View.OnClickListener 
    lateinit var textView:TextView;
    lateinit var btn:Button;
    override fun onCreate(savedInstanceState: Bundle?) 
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        initViews()
        setListener()
    

    private fun initViews()
        textView=findViewById<TextView>(R.id.text)
        btn=findViewById<Button>(R.id.btn)
    

    private fun setListener()
        textView.setOnClickListener(this)
        btn.setOnClickListener(this)
    

    override fun onClick(v: View?) 
        if (v != null) 
            when(v.id)
                R.id.text ->
                    textView.setText("You clicked text!")
                
                R.id.btn ->
                    val intent=Intent();
                    intent.setClass(this,SecondActivity::class.java)
                    startActivity(intent)
                
                else ->
                    Log.d("onClick","click nothing");
                

            
        

    
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
    android:gravity="center"
    android:orientation="vertical">

    <TextView
        android:id="@+id/text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello kotin"
        android:textSize="30sp">
    </TextView>

    <Button
        android:id="@+id/btn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="go to second">
    </Button>

</LinearLayout>

2.SecondActivity.kt及布局activity_second.xml

package com.example.kotlin

import android.os.Bundle
import com.google.android.material.floatingactionbutton.FloatingActionButton
import com.google.android.material.snackbar.Snackbar
import androidx.appcompat.app.AppCompatActivity

class SecondActivity : AppCompatActivity() 

    override fun onCreate(savedInstanceState: Bundle?) 
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_second)
    


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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=".SecondActivity"
    android:gravity="center">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="30sp"
        android:text="second activity">
    </TextView>

</LinearLayout>

以上是关于kotin 实现android activity之间的跳转的主要内容,如果未能解决你的问题,请参考以下文章

Android之Activity系列总结--Activity概览

Android四大组件之 Activity(下)

Android Studio之Activity切换动画

android之Activity的生命周期

Android开发基础之Activity,图解Activity状态与生命周期

Android开发基础之Activity,图解Activity状态与生命周期