这是我的TextInputEditText内部TextInputLayout。您可以看到的提示设置为TextInputLayout。
用户必须写255 个字符,否则帖子无效。
我希望数字255随着用户键入而减少,当达到 0 时,提示应为空白。
这是我的代码:
private int charactersLeft = 256;在onCreate方法之外声明。
这段代码在onCreate方法里面:
final TextInputLayout postTextInputBase = findViewById(R.id.post_text_input_base);
final TextInputEditText postTextInput = findViewById(R.id.post_text_input);
postTextInput.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
if (charactersLeft == 0) {
postTextInputBase.setHint(null);
} else {
postTextInputBase.setHint((charactersLeft - 1) + " characters left");
}
}
@Override
public void afterTextChanged(Editable s) {
}
});
我也尝试设置charactersLeft为characterLeft -= 1但是,java不允许我这样做。
那么,我该怎么做呢?
Smart猫小萌
相关分类