Проблема с тем, что приложение не могло захватить имя пользователя и отобразить его в результате действия.Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Проблема с тем, что приложение не могло захватить имя пользователя и отобразить его в результате действия.

Сообщение Anonymous »

Я пытаюсь отправить некоторые данные из моего MainActivity в ResultActivity. Однако действие не может захватить имя пользователя и отобразить его правильно.
Вот весь соответствующий код действия

Код: Выделить всё

MainActivity

Код: Выделить всё

package com.example.csc2074_19051374_assignment

import android.content.Intent
import android.os.Bundle
import android.widget.Button
import android.widget.EditText
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity

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

val etName: EditText = findViewById(R.id.input)
val btnStart: Button = findViewById(R.id.button_start)
btnStart.setOnClickListener {
if (etName.text.isNotEmpty()) {
val intent = Intent(this, QuestionActivity::class.java)
intent.putExtra(Constants.USER_NAME, etName.text.toString())
startActivity(intent)
finish()
} else {
Toast.makeText(this,"Please Enter Your Name",Toast.LENGTH_LONG).show()
}
}
}
}
Действия

Код: Выделить всё

        package com.example.csc2074_19051374_assignment

import android.content.Intent
import android.os.Bundle
import android.text.LoginFilter.UsernameFilterGMail
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import android.view.View
import android.widget.Button
import android.widget.TextView
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import com.google.android.material.color.utilities.Score

class Result : AppCompatActivity() {

private lateinit var textViewName:  TextView
private lateinit var textViewScore: TextView
private lateinit var finishButton: Button

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_result)

textViewName = findViewById(R.id.tv_name)
textViewScore = findViewById(R.id.tv_score)
finishButton = findViewById(R.id.btn_finish)

val totalQuestions = intent.getIntExtra(Constants.TOTAL_QUESTIONS,0)
val score = intent.getIntExtra(Constants.SCORE,0)
val name = intent.getStringExtra(Constants.USER_NAME)

textViewScore.text = "Your score is $score out of $totalQuestions"
textViewName.text = name

finishButton.setOnClickListener{
Intent(this,MainActivity::class.java).also{
startActivity(it)
}
}
}
}
Исходный результат Сразу после завершения викторины должны отображаться «Имя пользователя» и «Оценка», но они не отображаются. какие-то части, в которых я допустил ошибки? Я не понимаю, почему мне показываются стандартные текстовые сообщения по умолчанию. Надеюсь, кто-нибудь сможет помочь.
Вот как выглядит моя результирующая активность

Подробнее здесь: https://stackoverflow.com/questions/786 ... lt-activit
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»