- 编辑框中有内容时,如下图所示:
当你点击重置按钮时,需要将编辑框的内容清空!如果只是单纯采用如下代码实现编辑框内容的清空:
edit1.setText("");// TODO 编辑框设置清空
- 将会出现如下所示效果图:
这个时候光标会一直显示,用户体验效果较为不好。如果可以在清空内容的同时将光标也隐藏,那么用户体验就较为好了。
- 采用下面的方法可以实现编辑框内容清空的同时将光标隐藏:
代码实现如下:
// 重置按钮设置监听
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO 将编辑框的内容重置为空
reset();
}
});
private void reset() {
edit1.setText("");
edit1.setCursorVisible(false);// 内容清空后将编辑框1的光标隐藏,提升用户的体验度
Toast toast = new Toast(MainActivity.this);
TextView textView = new TextView(MainActivity.this);
textView.setText("点击了重置按钮,我是吐司!");
toast.setView(textView);
toast.setDuration(3000);
toast.show();
}
// 编辑框设置触摸监听
edit1.setOnTouchListener(new View.OnTouchListener() {
@SuppressLint("ClickableViewAccessibility")
@Override
public boolean onTouch(View v, MotionEvent event) {
if (MotionEvent.ACTION_DOWN == event.getAction()) {
edit1.setCursorVisible(true);// 再次点击显示光标
}
return false;
}
});
以上代码有关键的注释,而且很简单易懂。大体就是:给重置按钮设置单击事件监听,里面写了一个清空编辑框内容的方法reset()、然后在该方法里将编辑框的内容清空的同时将光标隐藏、接着需要给编辑框设置触摸事件监听,里面判断手势按下的时候,继续显示被隐藏的光标。
以上就是我对光标显示与隐藏的思路和想法,或许有更为简单的方法。大家可以去自己去研究,带着一种成长型的思维模式去学习,相信任何东西你都可以学会!You Can Learn Anything!思维模式别太固定了,你的大脑是可以和不断的被开发的,就像你的肌肉一样!
- 下面是点击重置按钮后隐藏光标的展示图片:
光标就隐藏了,而且下一次再次点击编辑框的时候,光标会再次出现。优化了用户体验。