每次单击按钮时,如何显示新的TextView文本

时间:2018-12-07 04:22:25

标签: android-studio kotlin textview android

我很抱歉。我正在尝试创建一个Android Studio应用程序,当单击按钮时,该问题将在问题和答案TextView框字段中显示不同的文本。我能够弄清楚如何使文本更改一次,但是如何使每次单击该按钮重复循环呢?

每次单击按钮时我都希望包含的示例问题和答案:

你叫什么名字? 我叫艾莉莎!

您几岁? 我今年28岁。

您今天吃了什么? 我吃了意大利面条和肉丸。

这是我的代码:

MainActivity.kt

package example.alyssa.com.askalyssa

import android.app.Activity
import android.os.Bundle
import android.view.View
import android.widget.EditText
import android.widget.TextView
import kotlin.random.Random


class MainActivity : Activity() {

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

}

fun buttonClick(v: View) {
    val tv = findViewById(R.id.welcome) as TextView
    tv.text = "Hi! I'm Alyssa"
    val question = findViewById(R.id.questionfield) as TextView
    question.text = "What is your name?"
}
}

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

<TextView
        android:text="Avatar Response Field"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/welcome" app:layout_constraintEnd_toEndOf="parent" 
android:layout_marginEnd="8dp"
        app:layout_constraintStart_toStartOf="parent" 
android:layout_marginStart="8dp"
        android:layout_marginTop="16dp" 
app:layout_constraintTop_toTopOf="parent"
/>
<TextView
        android:text="Question Pop Up Field"
        android:layout_width="wrap_content"
        android:layout_height="37dp"
        android:id="@+id/questionfield" 
app:layout_constraintStart_toStartOf="parent"
        android:layout_marginStart="8dp"
        app:layout_constraintEnd_toEndOf="parent" 
android:layout_marginEnd="8dp"
        app:layout_constraintHorizontal_bias="0.497"
        android:layout_marginBottom="8dp"
        app:layout_constraintBottom_toTopOf="@+id/button"/>
<Button
        android:text="Click to Ask Alyssa a Question"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/button" android:layout_marginTop="8dp"
        app:layout_constraintTop_toBottomOf="@+id/textView2" 
android:layout_marginBottom="1dp"
        app:layout_constraintBottom_toBottomOf="parent" 
app:layout_constraintStart_toStartOf="parent"
        android:layout_marginStart="8dp" 
app:layout_constraintEnd_toEndOf="parent" android:layout_marginEnd="8dp"
        android:onClick="buttonClick"/>
<ImageView
        android:src="@drawable/ic_launcher_background"
        android:layout_width="249dp"
        android:layout_height="301dp"
        android:id="@+id/imageView2"
        app:layout_constraintTop_toBottomOf="@+id/welcome" 
android:layout_marginTop="48dp"
        app:layout_constraintEnd_toEndOf="parent" 
android:layout_marginEnd="8dp"
        app:layout_constraintStart_toStartOf="parent" 
android:layout_marginStart="8dp"
        android:layout_marginBottom="8dp" 
app:layout_constraintBottom_toTopOf="@+id/questionfield"/>
</android.support.constraint.ConstraintLayout>

1 个答案:

答案 0 :(得分:0)

我不完全理解您的问题,但是我发现您没有听完按钮的点击。因此,要么使用MainActivity实现setonclickListner,要么直接使用btn.setOnClickListner并在textview上执行相应的操作。 如果您仍然遇到任何问题,请在此处以适当的查询进行评论。我一定会帮助您。