【发布时间】:2017-01-16 06:48:13
【问题描述】:
我正在尝试禁用进入 下一行的键,以便 autocompletetextview 像搜索框一样作为单行工作,并且在选择列表中的正确文本光标将被禁用,键盘将消失
问题 1: 虽然不久前我已经使用 textview 禁用了这个光标,但也许它也可以在这里工作,但键盘仍然保留在那里,直到我在移动设备上按下返回键。
问题 2: 因为我已经尝试了 maxLines="1"、lines="1" 和其他一些东西,但它没有按应有的方式工作。
我想要什么:用户只能从列表中选择一项。
代码:
<AutoCompleteTextView
android:id="@+id/list_names"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:minWidth="150dp"
android:ems="10"
/>
JAVA:
public void getList(){
try{
while(scanner.hasNextLine()){
list.add(scanner.next());
}
}catch (Exception e){e.printStackTrace();}
}
public void populate(){
adapter = new ArrayAdapter<String>
(this,android.R.layout.simple_list_item_1,list);
autolist.setAdapter(adapter);
}
我也试图阻止键盘操作中的一些键事件
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (event != null&& (event.getKeyCode() == KeyEvent.KEYCODE_ENTER || keyCode == 66 || event.getKeyCode() == KeyEvent.FLAG_EDITOR_ACTION)) {
return false;
}
return false;
}
【问题讨论】:
-
返回真;在 onKey 方法的 if 条件下
-
@UsmanRana 没有工作它作为单行,因为我把这个 lines="1" 但假设我输入 M 然后按 enter 键所以它移动到下一行但是当我看不到 M按返回删除 我看到 M 正在被删除。你懂了 ?它从未阻止输入或完成键,而是一次只能看到一行,因为我使用了 lines="1" 这就是为什么
标签: android