【发布时间】:2019-07-22 07:17:08
【问题描述】:
Intent contrucotr 的争论需要 Context 类的对象,但在这段代码中,我传递了“this”,这意味着 MainActivity 类对象的对象。这个怎么运作?因为它需要 Context Class 实例,但我正在传递 MainActivity 的实例。
const val EXTRA_MESSAGE = "com.example.myfirstApp.MESSAGE"
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}
fun sendMessage(view: View){
val editText = findViewById<EditText>(R.id.editText)
val message = editText.text.toString()
val intent =Intent(this,DisplayMessageActivity::class.java).apply{
// if I use MainActivity() instead of this , gives me error
putExtra(EXTRA_MESSAGE, message)
}
startActivity(intent)
}
}
这里,this 表示 MainActivity 的实例,但如果我使用 MainActivity() 而不是 this 它会给我错误。而this 和MainActivity() 在这里是一样的。
【问题讨论】:
标签: android android-intent kotlin this