复选框已选中或无法记录

时间:2018-11-20 16:36:58

标签: android

我是一名Android学习者,在我的课程中有一个任务,当单击复选框时,要写入日志。 我的XML是:

<CheckBox
    android:id="@+id/whippedCreamCheckBox"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Whipped Cream"
    android:textSize="16sp"
    android:paddingLeft ="24dp"
    android:buttonTint="#008000"
    android:textAppearance="?android:textAppearanceMedium" />

对应的Java代码是

public void indicateBoxChecked(View v) {
        CheckBox whippedCreamCheckBox = findViewById(R.id.whippedCreamCheckBox);
        boolean checked = whippedCreamCheckBox.isChecked();
        Log.v(TAG, "Checkbox value is " + checked );
    }

其余代码可以正确构建,运行和运行。但是,在日志中我看不到所需的输出。但我明白了

  

未向HAL提供足够的数据,仅预期位置4798584   写了4798080

您可以在https://gist.github.com/latrociny/f318f74bbf9b9e28cc0a3a5370eaf996

处访问整个日志

1 个答案:

答案 0 :(得分:0)

将此属性添加到CheckBox

android:onClick="indicateBoxChecked"

,然后将您的代码更改为此(不是在您的活动类中?):

public void indicateBoxChecked(View v) {
    CheckBox whippedCreamCheckBox = (CheckBox) v;
    boolean checked = whippedCreamCheckBox.isChecked();
    Log.v(TAG, "Checkbox value is " + checked );
}

现在,每当您单击CheckBox时,方法indicateBoxChecked()将被执行。
我猜变量TAG已初始化。