首页 > 解决方案 > 如何在 Android Studio 中为我的两个 TextView 添加重置按钮

问题描述

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

    <TextView
        android:id="@+id/away"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="100dp"
        android:text="@string/away"
        android:gravity="center"
        android:textSize="20sp"/>

    <TextView
        android:id="@+id/score"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="50dp"
        android:layout_marginTop="50dp"
        android:gravity="center"
        android:text="@string/_0"
        android:textSize="20sp" />

    <Button
        android:id="@+id/one"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginBottom="50dp"
        android:onClick="score1"
        android:text="@string/score" />

    <TextView
        android:id="@+id/home"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="50dp"
        android:layout_marginTop="50dp"
        android:text="@string/home"
        android:textSize="20sp"
        android:gravity="center"/>

    <TextView
        android:id="@+id/score2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:layout_marginBottom="50dp"
        android:text="@string/_0"
        android:textSize="20sp" />

    <Button
        android:id="@+id/two"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:onClick="score2"
        android:text="@string/score" />

    <Button
        android:id="@+id/reset"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/reset"
        android:layout_gravity="center"
        android:layout_marginTop="50dp"
        android:textColor="#ff1100"/>

</LinearLayout>

我在多个网站上搜索了它,但我仍然无法回答。我也尝试使用 __setText("")it

效果不如 if() 方法。我也试过intent方法似乎也没有

工作,还有许多其他代码,请帮助我,因为我被困在这一点上,我知道这很简单,但是

我就是找不到。谢谢

标签: javaandroidbuttontextviewandroid-studio-4.0

解决方案


以下代码将在单击scoreButton 时将 TextView 设置为空白one

第一种方法

android:onClick="score1"在您的 XML 中使用

将此添加到您的活动中

TextView mTvScore1 = (TextView) findViewById(R.id.score)

public void score1(View v) {
    mTvScore1.setText("");
}

第二种方法

Button mBtn = (Button) findViewById(R.id.one)
TextView mTvScore1 = (TextView) findViewById(R.id.score)

mBtn.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        mTvScore1.setText("");
    }
});

活动代码

import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        TextView mTvScore1 = (TextView) findViewById(R.id.score);
        Button mBtn = (Button) findViewById(R.id.one);

        mBtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                score1(v);
            }
        });
    }

    public void score1(View v) {
        mTvScore1.setText("");
    }
}

推荐阅读