我想知道如何在kotlin中将3个变量发送到具有意图的另一个活动,我想知道另一个意图也应该如何,不仅是发送,还应该如何在具有3个变量:
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import com.yr.iolite.R
class RestrictionsActivity : AppCompatActivity()
{
override fun onCreate(savedInstanceState: Bundle?)
{
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_restrictions)
var a = 10
var b = 5
var c = "2.5"
}
}
我要接收的活动:
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import com.yr.iolite.R
class home : AppCompatActivity()
{
override fun onCreate(savedInstanceState: Bundle?)
{
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_home)
}
}
只需使用putExtra()发送数据;
发送
class RestrictionsActivity : AppCompatActivity()
{
override fun onCreate(savedInstanceState: Bundle?)
{
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_restrictions)
var a = 10
var b = 5
var c = "2.5"
val nextIntent = Intent(this, home::class.java)
nextIntent.putExtra("a", a)
nextIntent.putExtra("b", b)
nextIntent.putExtra("c", c)
startActivity(nextIntent)
}
}
收到
class home : AppCompatActivity()
{
override fun onCreate(savedInstanceState: Bundle?)
{
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_home)
var intent = getIntent()
var a = intent.getIntExtra("a",0)
var b = intent.getIntExtra("b",0)
var c = intent.getIntExtra("c",0)
}
}
更新:添加布尔类型和字符串类型
发送数据时与IntType相同。
var a = 10
var b = "hello"
var c = true
nextIntent.putExtra("a", a)
nextIntent.putExtra("b", b)
nextIntent.putExtra("c", c)
但是,当您接收数据时,请使用type来防止密钥不正确时可能发生的NPE。
var intent = getIntent()
var a = intent.getIntExtra("a", 0)
var b = intent.getStringExtra("b")
var c = intent.getBooleanExtra("c",false)
也许您可以在这里找到更多选择
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句