将文本显示为下一个活动Kotlin



我在Internet上寻找我的问题,但是提供的解决方案仍然不起作用。如何将数据从第一个活动转移到第二个活动?(纯文本(

MainActivity

 btn.setOnClickListener {
        val player1= findViewById<EditText>(R.id.et1) as EditText
        val player2= findViewById<EditText>(R.id.et2) as EditText
        val intent1= Intent(this, MainActivity3::class.java).apply {
            putExtra("player1",player1.getText().toString())
            putExtra("player2",player2.getText().toString())
        }
        startActivity(intent1)
    }

第二个活动

fun PlayGame(cellID:Int,buSelected:Button){
    val playe1= intent.getStringExtra(EXTRA_MESSAGE)
    val playe2= intent.getStringExtra(EXTRA_MESSAGE)
    val textView2= findViewById<TextView>(R.id.textView2).apply{
        text= playe1
        text=playe2
    }
    if(ActivePlayer==1){
        textView2.setText(": $playe1")
        buSelected.text="0"
        buSelected.setBackgroundResource(R.color.blue)
        player1.add(cellID)
        ActivePlayer=2
    }else{
        textView2.setText(": $playe2")
        buSelected.text="X"
        buSelected.setBackgroundResource(R.color.green)
        player2.add(cellID)
        ActivePlayer=1
    }
    buSelected.isEnabled=false
    CheckWiner()
}

我希望从MainActivity中的播放器的名字转为第二; P

问题在于您获得值的方式。尝试以下操作:

val playe1= intent.getStringExtra("player1")
val playe2= intent.getStringExtra("player2")

在将值保存到val或var删除共享首选项之后,使用共享preferences,在下一个活动中。

这不是理想的选择,但它可能会让您到达至少可以与该数据进行交互的地方。

我昨晚将此方法用于类似的东西。如果我有时间今晚,我将在网站上发布一个如何发布。如果可以的话,我会在这里摇摆并编辑答案。使用代码和说明,除非您届时将其弄清楚。

最新更新