显示下一个活动kotlin的文本

问题描述 投票:0回答:2

我在互联网上寻找我的问题,但给出的解决方案仍然无效。如何将数据从第一个Activity传输到第二个?(纯文本)

主要信息

 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中的玩家名字变为Second; p

android android-studio kotlin
2个回答
0
投票

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

它并不理想,但它可能会让您到达至少可以与数据交互的地方。

我昨晚使用这种方法做类似的事情。如果我今晚有空的话,我会在我的网站上发布一个如何进行此操作。如果我可以在这里摆动并编辑我的答案。随着代码和解释,除非你得到它的想法。


1
投票

问题在于你获得价值的方式。试试这个:

val playe1= intent.getStringExtra("player1")
val playe2= intent.getStringExtra("player2")
© www.soinside.com 2019 - 2024. All rights reserved.