段落截屏

在这里插入图片描述
onBackPressed() 方法在 Android 13 (API 33) 及更高版本中已被弃用,对于手势导航,系统不再调用 onBackPressed() 方法,建议使用 OnBackPressedDispatcher 来替代;相关链接

替代方案

修改 SecondActivity 中的 onBackPressed() 方法,使用OnBackPressedDispatcher:

 override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        enableEdgeToEdge()
        setContentView(R.layout.second_layout)
        var stringExtra = intent.getStringExtra("data_1")
        Toast.makeText(this, stringExtra, Toast.LENGTH_LONG).show()
        binding = SecondLayoutBinding.inflate(layoutInflater)
        setContentView(binding.root)
        binding.button.setOnClickListener {
            val intent = Intent()
            intent.putExtra("data_return", "Hello from SecondActivity")
            setResult(RESULT_OK, intent)
            finish()
        }
        onBackPressedDispatcher.addCallback(this) {
            val intent = Intent()
            intent.putExtra("data_return", "Hello from SecondActivity")
            setResult(RESULT_OK, intent)
            finish()
        }

    }
Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐