避免虚拟键盘弹出
Posted
技术标签:
【中文标题】避免虚拟键盘弹出【英文标题】:avoid the virtual keyboard popup 【发布时间】:2012-04-16 08:31:54 【问题描述】:我创建了一个 EditText,我想在长按 EditText 时避免出现虚拟键盘小狗。但仍然可以选择文本中的单词。
我想要一个看起来像 textView(已经完成)的 EditText,并且可以在 editText 中选择单词进行搜索。但不想要虚拟键盘和上下文菜单(或更改它的菜单项,但这并不重要)。可以吗?
【问题讨论】:
【参考方案1】:创建您自己的扩展 EditText
的 EditText,然后覆盖 onCheckIsTextEditor()
:
public class MyEditText extends EditText
public MyEditText (Context context)
super(context);
public MyEditText (Context context, AttributeSet attrs)
super(context, attrs);
public MyEditText (Context context, AttributeSet attrs, int defStyle)
super(context, attrs, defStyle);
@Override
public boolean onCheckIsTextEditor()
return false;
【讨论】:
如果我创建自己的editText MyEditText,我可以简单地使用您可以在您的代码中为EditText
设置以下代码。这样它就不会在android中弹出软键盘
mEditText.setInputType(InputType.TYPE_NULL);
mEditText.setOnLongClickListener(new OnLongClickListener()
@Override
public boolean onLongClick(View arg0)
return true;
);
【讨论】:
【参考方案3】:试试看 -
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);
【讨论】:
以上是关于避免虚拟键盘弹出的主要内容,如果未能解决你的问题,请参考以下文章