在文本视图框上显示文本(Android)

时间:2020-04-05 17:13:13

标签: android kotlin

layout resource file 1

layout resource file

我是Android的初学者。我有两个布局资源文件,如上所示。 我想在第一个单词中输入一个单词,然后单击按钮,然后假设转到第二个布局资源文件并在文本视图框上显示该单词。每当尝试尝试时,我都会不断收到错误消息。

下面是我写的代码

class MainActivity : AppCompatActivity() {

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)
    setSupportActionBar(toolbar)

    button.setOnClickListener {
        startActivity(Intent(this, NewLayoutActivity::class.java))
    }
}

用于新布局活动

class NewLayoutActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.new_layout)

    textView.text = ${editText.text}
}

3 个答案:

答案 0 :(得分:1)

在打开新活动时有意图地传递数据:

val intent = Intent(this, NewLayoutActivity::class.java)
intent.putExtra("value", "value you want to pass")
startActivity(intent)

然后参加第二项活动:

var bundle :Bundle ?=intent.extras
var message = bundle!!.getString("value") // if the value is type of String

答案 1 :(得分:1)

您应该尝试`意图

    var data2 = editText.text.toString
    val intent = Intent(applicationContext,secondActivity::class.java)
    intent.putExtra("name",data2)
    startActivity(intent)

在第二个

val data = intent.getStringExtra("name")

您应该学习导航更好,更轻松

答案 2 :(得分:1)

从此更改代码

button.setOnClickListener {
    startActivity(Intent(this, NewLayoutActivity::class.java))
}

对此

val value = edit_text_id.text 
button.setOnClickListener {
    startActivity(Intent(this, NewLayoutActivity::class.java)
.putExtra("key", value))
}

然后,通过此活动获得第二次活动的价值

val value = Intent().getStringExtra("key")
text_view_id.text = value