java - 在android/JAVA中改变变量的值

标签 java android button textview onclicklistener

我试图制作一个简单的应用程序,其中单击 tapb Button 会增加 notaps 的变量值,而重置 Button 会将其设置为 0。当我单击 tabp 它会增加值并单击 reset 重置它但是当我再次单击 tabp 它会从以前的值增加。

例如:

init value of notaps = 0;

我点击 tabp 3 次并且 notaps value = 3

我点击resetnotaps value = 0

我点击 tabp 3 次并且 notaps value = 4

    Button tapb = (Button)findViewById(R.id.tapb);
    Button reset = (Button)findViewById(R.id.reset);


    tapb.setOnClickListener(
            new Button.OnClickListener(){
                int notaps = 0;
                @Override
                public void onClick(View v) {
                    TextView taps = (TextView)findViewById(R.id.taps);
                    notaps++;
                    taps.setText(String.valueOf(notaps));

                }
            }
    );

    reset.setOnClickListener(
            new Button.OnClickListener() {

                @Override
                public void onClick(View v) {
                    TextView taps = (TextView) findViewById(R.id.taps);
                    int notaps=0;
                    taps.setText(String.valueOf(notaps));

                }
            }
    );

最佳答案

首先,您有 2 个名为 notapsint 实例,它们彼此无关。您的重置按钮没有设置正确的 notaps 变量。

这是一个应该有效的 fragment 。

    private int notaps;

    Button tapb = (Button)findViewById(R.id.tapb);
    Button reset = (Button)findViewById(R.id.reset);
    TextView taps = (TextView)findViewById(R.id.taps);

    tapb.setOnClickListener(
        new Button.OnClickListener(){
            @Override
            public void onClick(View v) {
                notaps++;
                taps.setText(String.valueOf(notaps));
            }
        }
    );

    reset.setOnClickListener(
        new Button.OnClickListener() {
            @Override
            public void onClick(View v) {
                notaps = 0;
                taps.setText(String.valueOf(notaps));
            }
        }
    );

关于java - 在android/JAVA中改变变量的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31838661/

相关文章:

java - Dagger 2 - 使用 @Named 注入(inject)多个相同类型的对象不起作用

Java线程输出数据到集合得到错误的结果

java - Spring如何决定初始化Bean和普通类的顺序?

android - 带有协调器 View 的 snackbar 出现后布局 View 卡住

android - 如何启动/停止Runnable/Handler?

java - 如何从 java 类获取 FXML 文件中定义的按钮位置

swift - 单击按钮计数

java - 在 Android 中使用 Java Mail API 邮寄大图像(> 500 KB)时出错

android - 在 Android 中没有 Activity 的情况下刷新服务中的 Azure 用户 token

android - 更改按钮图像onClick android