只需增加 dispatchKeyEvent方法 对Ctrl + C 做处理
@Override
public boolean dispatchKeyEvent(KeyEvent event){
int keyCode = event.getKeyCode();
if(event.isCtrlPressed() && keyCode == KeyEvent.KEYCODE_C && event.getAction() == KeyEvent.ACTION_DOWN){
return true;
}else if(event.isCtrlPressed() && keyCode == KeyEvent.KEYCODE_C && event.getAction() == KeyEvent.ACTION_UP){
if(mText != null){
int indexStart = mText.getSelectionStart();
int indexEnd = mText.getSelectionEnd();
CharSequence selectText = mText.getText().subSequence(indexStart, indexEnd);
ClipboardManager cm =(ClipboardManager)getSystemService(Context.CLIPBOARD_SERVICE);
cm.setText(selectText.toString());
}
}
return super.dispatchKeyEvent(event);
}
本文介绍如何在Android应用中处理Ctrl+C组合键,避免其导致应用意外退出。通过覆盖`dispatchKeyEvent`方法,当按下Ctrl+C时,不仅防止应用关闭,还能实现选中文本的复制功能。
6534

被折叠的 条评论
为什么被折叠?



