fun kullaniciOlustur2(view: View){
val intent = Intent(applicationContext,KullaniciOlustur2::class.java)
intent.putExtra("input",makeUsername.text.toString())
intent.putExtra("input2",makeUserphone.text.toString())
startActivity(intent)
}
Mainactivity2 начинается здесь .. до этого я использовал
val intent = intent
val received: String = intent.getStringExtra("input")
makeUsername.text = received
Но этот метод больше не работает.
Я пробовал использовать getIntent(), но ничего не получил
val intent = getIntent()
или попробуйте использовать val Received = intent.extras.getString ("input")
Спасибо @ShwetaChauhan, но у меня это не сработало.
Спасибо @Deven, ваш код хорош, но я не могу отправить информацию в текстовое поле. После вашего кода я написал makeUsername.text = Received Но код имеет красную строку от начала до конца
Я рекомендую использовать Kotlin Anko, существует множество методов, которые помогут вам удалить этот шаблонный код.
проверьте Anko Intents здесь
Попробуйте этот код
Activity 1
val intent = Intent(FirstActivity.this,SecondActivity::class.java) //not application context
intent.putExtra("input",makeUsername.text.toString())
intent.putExtra("input2",makeUserphone.text.toString())
startActivity(intent)
Activity 2
внутри метода onCreate () используйте
val stringOne = getIntent().getStringExtra("input")
Или более чистый способ
val extras = getIntent().getExtras()
if (null != extras) {
val value = extras.getString("input")
//The key argument here must match that used in the other activity
}
и, пожалуйста, проверьте аналогичные ответы на Java, вы можете получить идею здесь, уже упомянутую в другом ответе.
Я также использую Анко, чтобы удалить этот шаблонный код
Спасибо @TapanHP, это сработало. Также я буду много пробовать использовать Anko в своем проекте.
Используйте код ниже: Код такой же, как и в Java. Разница только в том, что в котлине нет 1. Без точки с запятой в конце. 2. для вызова другого действия kotlin используйте ::
напр.KotlinActivity :: class.java
startActivity(Intent(this, KotlinActivity::class.java).putExtra("DataTrasfer", ""))
Чтобы получить выгоду:
intent.getStringExtra("DataTrasfer")
попробуйте это val intent = intent.getStringExtra ("input")