EditText
如果文本太长,我需要将其椭圆化并确保第一个字符可见。但是在单击/触摸事件上,它应该是可编辑的,并且光标应该位于行尾。
在网上搜索后,似乎android:ellipsize="end"
与EditText
. 确实,如果我设置edittext.setKeyListener(null)
ellipsize 有效,但视图不可编辑,我无法在其上设置任何onClickListener
内容。
如果我使用setFocusable(false)
而不是禁用KeyListener
我不会得到椭圆效果。
我当前的代码:
v.setSelection(0);
v.setFocusable(false);
//v.setKeyListener(null);
v.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
v.setFocusable(true);
v.setFocusableInTouchMode(true);
v.setEnabled(true);
v.setSelection(v.getText().length());
}
});
xml:
android:lines="1"
android:scrollHorizontally="true"
android:ellipsize="end"
android:singleLine="true"