I created an app in Java, but when converting to Kotlin, I had to change the variable
val random = Random() //gerar números aleatórios
val numerosAleatorios = frasesst.random() //gerar as frases de maneira aleatória
frases.setText(frasesst[numerosAleatorios])
Now the error "Unresolved reference: setText" appears when I try to compile the apk. Below is the source code of the app to understand better.
package com.frases.coquinha
import android.os.Bundle
import android.view.View
import android.widget.Button
import android.widget.TextView
import androidx.appcompat.app.AppCompatActivity
import java.util.*
class MainActivity : AppCompatActivity(), View.OnClickListener {
private var frases: TextView? = null
private var gerarFrases: Button? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
var frases = findViewById<View>(R.id.frases)
var gerarFrases = findViewById<View>(R.id.gerarFrases)
gerarFrases.setOnClickListener(View.OnClickListener {
val frasesst: Array<String> = arrayOf(
"Você é incrível, nunca deixe alguém dizer o contrário!", //0
"Você é perfeitamente imperfeita!\uD83D\uDE0D❤️", //1
"Você é linda, do jeitinho que você é!\uD83D\uDE0D", //2
"Você é a mulher mais bela que meus olhos já viram!", //3
)
val random = Random() //gerar números aleatórios
val numerosAleatorios = frasesst.random() //gerar as frases de maneira aleatória
frases.setText(frasesst[numerosAleatorios])
})
}
override fun onClick(p0: View?) {
TODO("Not yet implemented")
}
}
CodePudding user response:
Try this
var frases = findViewById<TextView>(R.id.frases)
var gerarFrases = findViewById<Button>(R.id.gerarFrases)
CodePudding user response:
I have updated your code Try once
import android.os.Bundle
import android.widget.Button
import android.widget.TextView
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
class MainActivity : AppCompatActivity() {
private var frases: TextView? = null
private var gerarFrases: Button? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
frases = findViewById(R.id.frases)
gerarFrases = findViewById(R.id.gerarFrases)
gerarFrases?.setOnClickListener {
val frasesst: Array<String> = arrayOf(
"Você é incrível, nunca deixe alguém dizer o contrário!", //0
"Você é perfeitamente imperfeita!\uD83D\uDE0D❤️", //1
"Você é linda, do jeitinho que você é!\uD83D\uDE0D", //2
"Você é a mulher mais bela que meus olhos já viram!", //3
)
val numerosAleatorios = (0..3).random()
Toast.makeText(this, numerosAleatorios.toString(), Toast.LENGTH_LONG).show()
frases?.text = frasesst[numerosAleatorios]
}
}
}