Передайте значение EditText другому действию

#android #kotlin

#Android #kotlin

Вопрос:

Я сделал игру в крестики-нолики, в настоящее время у меня есть 3 занятия. Я хочу передать значения строки редактирования текста другому действию для последующего использования в качестве имен.

 <EditText
    android:id="@ id/editTextName"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:ems="10"
    android:hint="Input Player Name"
    android:inputType="textPersonName" />

<EditText
    android:id="@ id/editTextName2"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginTop="25dp"
    android:ems="10"
    android:hint="Input Player 2 Name"
    android:inputType="textPersonName" />
 

У меня есть два текста редактирования для двух имен, и я хочу передать эти имена в виде строк другому действию, чтобы использовать их в качестве имен.

 if (firstPlayer.contains(1) amp;amp; firstPlayer.contains(2) amp;amp; firstPlayer.contains(3)) {
    winnerPlayer = 1
    score  
    scoreText.text = "Player 1: $score"
}

if (secondPlayer.contains(1) amp;amp; secondPlayer.contains(2) amp;amp; secondPlayer.contains(3)) {
    winnerPlayer = 2
    score2  
    scoreText2.text = "Player 2: $score2"
}
 

как вы можете видеть , я вручную ввел Player 1 и Player 2 . Я пытаюсь заменить их на name1 и name2, которые являются строками, которые были введены ранее. Я написал некоторый код с намерением, но смог заставить его работать. Приложение просто разбилось и разбилось.

Комментарии:

1. Использование намерения — правильный путь. Покажите нам код, который вы пробовали, и журнал сбоев.

Ответ №1:

 Intent intent = new Intent(getApplicationContext(), AnotherActivity.class);
String string1 = editTextName.getText();
String string2 = editTextName2.getText();
intent.putExtra("string1", string1);
intent.putExtra("string2", string2);
startActivity(intent);
 

и получить его в AnotherActivity.class как показано ниже

 String string1 = getIntent().getStringExtra("string1");
String string2 = getIntent().getStringExtra("string2");