文本编辑框显示光标,屏蔽软键盘和上下文对话框

【文本编辑框显示光标,屏蔽软键盘,屏蔽双击或长按文本编辑框时弹出的上下文对话框(复制、粘贴)】


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;
}
}); 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值