• Android Activity跳转


    实现点击按钮,发送消息并跳转到另一个Activity

    1. MainActivity添加SendMessage方法
    const val EXTRA_MESSAGE = "com.example.myfirstapp.MESSAGE"
    
    class MainActivity : AppCompatActivity() {
        override fun onCreate(savedInstanceState: Bundle?) {
            super.onCreate(savedInstanceState)
            setContentView(R.layout.activity_main)
        }
    
        /** Called when the user taps the Send button */
        fun sendMessage(view: View) {
            val intent = Intent(this, DisplayMessageActivity::class.java).apply {
                putExtra(EXTRA_MESSAGE, "my message")
            }
            startActivity(intent)
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    通过 EXTRA_MESSAGE 传递消息: "my message"给新的Activity
    Intent 构造函数会获取两个参数:Context(this) 和 Class(要启动的 activity)
    putExtra参数要传入独一无二的字串和要传递的消息
    startActivity() 方法将启动一个由 Intent 指定的 DisplayMessageActivity 实例

    1. 添加Send按钮
      拖动一个Button到activity_main.xml中,并定义点击时调用 sendMessage方法
    btnNumbers.setOnClickListener{
        Log.e("click", "click btn Numbers")
       
        val intent = Intent(this, NumbersMainActivity::class.java).apply{
            putExtra(EXTRA_NUMBERS_MESSAGE, "numbers message")
        }
        startActivity(intent)
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    此时NumbersMainActivity还没有创建,显示红色

    1. 创建新的 Activity
      右键MainActivity.kt的文件夹,新建Empty Activity,填入DisplayMessageActivity,在其中写入
    class NumbersMainActivity : AppCompatActivity() {
        override fun onCreate(savedInstanceState: Bundle?) {
            super.onCreate(savedInstanceState)
            setContentView(R.layout.activity_numbers_main)
    
            val message = intent.getStringExtra(EXTRA_NUMBERS_MESSAGE)
    
            val textView = findViewById(R.id.textViewNumbers).apply {
                text = message
            }
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    修改 activity_numbers_main.xml, 拖入一个 TextView元素,并设置id为textViewNumbers,用于显示收到的消息

    1. 返回按钮 (向上导航)

    修改 AndroidManifest.xml

    <activity android:name=".DisplayMessageActivity"
              android:parentActivityName=".MainActivity">
        
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value=".MainActivity" />
    activity>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    就是这个
    在这里插入图片描述

  • 相关阅读:
    声控小夜灯方案开发 声控小夜灯IC芯片方案开发MCU
    在线存储系统源码 网盘网站源码 云盘系统源码
    多项式回归与模型泛化
    机器学习——k-近邻算法、K-均值算法、PCA、异常检测算法、上限分析
    【初阶数据结构】带头双向循环链表(C语言实现)
    vue2知识点:浏览器本地缓存
    ZooKeeper配置文件zoo.cfg参数详解
    MediatR
    Pyspark案例综合(数据计算)
    Outlook提示无法保存该附件。无法创建文件......
  • 原文地址:https://blog.csdn.net/change_fate/article/details/127985150