【文本编辑框显示光标,屏蔽软键盘,屏蔽双击或长按文本编辑框时弹出的上下文对话框(复制、粘贴)】
EditText Password = (EditText) findViewById(R.id.login_psd_input);
如果你使用:
Password.setFocusable(false);
Password.setEnabled(false);
那么,就可以解决点击,长按,双击文本输入框时不弹软键盘和复制、粘贴对话框的问题,但是光标却没有了。
要解决这个问题,可以这样做:
Password.setShowSoftInputOnFocus(false); //该方法是系统级的一个final的方法,要用系统级编译才行。也可以使用java映射的方法来调用该方法。
屏蔽双击或长按文本编辑框时弹出的上下文对话框(复制、粘贴)的方法:
通常很多人都会采用:
Password.setLongClickable(false);
但是,这样做可以屏蔽长按时弹出对话框,但是双击时仍然会弹出复制,粘贴的对话框,尤其是安卓4.0以上版本采用该方法不行。
要想完全屏蔽双击或长按文本编辑框时弹出的上下文对话框(复制、粘贴)可以采用如下回调函数:
Password.setCustomSelectionActionModeCallback(new ActionMode.Callback()
{
@Override
public boolean onPrepareActionMode(ActionMode mode, Menu menu)
{
// TODO Auto-generated method stub
return false;
}
@Override
public void onDestroyActionMode(ActionMode mode)
{
// TODO Auto-generated method stub
}
@Override
public boolean onCreateActionMode(ActionMode mode, Menu menu)
{
// TODO Auto-generated method stub
return false;
}
@Override
public boolean onActionItemClicked(ActionMode mode, MenuItem item)
{
// TODO Auto-generated method stub
return false;
}
});