Luc*_*ota 3 forms validation checkbox android android-layout
在我的表格中,我有一个CeckBox,需要检查提交.如果未选中,我调用setError()来警告用户.但是,一旦显示错误,无论是否选中复选框,它都不会消失.其他错误是如果错误文本很长,它看起来不完整.在横向模式下,它看起来很完整.
复选框xml:
<CheckBox
android:id="@+id/reg_terms"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Li e concordo com os Termos de Uso."
android:focusableInTouchMode="true"
android:focusable="true"
android:textColor="#000000"
android:checked="false"
/>
Run Code Online (Sandbox Code Playgroud)
验证(在submitButtons的onClick内):
if(!reg_terms.isChecked()){
reg_terms.setError("É preciso aceitar os Termos de Uso");
validation = false;
}
Run Code Online (Sandbox Code Playgroud)
如果用户选中该框,我可以使用"addOnFocusChangedListener"methot来"解除"错误吗?我怎么能避免错误文本显示不完整?
VieledankefüralleHilfe.:d
至于清除错误,您可以像这样添加OnCheckedChangeListener:
reg_terms.setOnCheckedChangeListener(new OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if ( isChecked ) {
reg_terms.setError(null);
} else {
reg_terms.setError("É preciso aceitar os Termos de Uso");
}
}
});
Run Code Online (Sandbox Code Playgroud)
就个人而言,我也会将字符串提取到您的R.strings中,并在XML和代码中引用它.
对于文本换行,请尝试添加reg_terms.setMaxLines(2)
到代码中以允许文本最多填充2行.我不确定这是否有效,但值得一试.