阅读:3344回复:2
求助大大,怎么在主键盘实现长按复制的功能
大大,如图,想在主键盘界面实现长按进行“全选、剪切、复制、粘贴”的功能。
图片:小小安卓键盘.png 根据文件瞎改的内容,如果键盘切换这个皮肤后不输入任何内容,长按是有效的。但一旦打字上屏后,长按这四个键的功能就会出故障。目前能力的天花板就只能做成这样了,所以又来求助了。 function setMenuTimeout(target, coords, touchId){ if (touchCount > 1) return; menuTimeout=setTimeout(function(){ var keycode=Render.getCode(target); Render.showAlternatives(target); if(keycode==KEYCODE_a || keycode==KEYCODE_A || keycode==KEYCODE_c || keycode==KEYCODE_C || keycode==KEYCODE_g || keycode==KEYCODE_G || keycode==KEYCODE_v || keycode==KEYCODE_V || keycode==KEYCODE_x || keycode==KEYCODE_X){ skipKey=true; switch(keycode){ case KEYCODE_a:keycode=App.action("selectAll")|0;break; case KEYCODE_A:keycode=App.action("selectAll")|0;break; case KEYCODE_c:keycode=App.action("copy")|0;break; case KEYCODE_C:keycode=App.action("copy")|0;break; case KEYCODE_g:keycode=editor(0)|0;break; case KEYCODE_G:keycode=editor(0)|0;break; case KEYCODE_v:keycode=App.action("paste")|0;break; case KEYCODE_V:keycode=App.action("paste")|0;break; case KEYCODE_x:keycode=App.action("cut")|0;break; case KEYCODE_X:keycode=App.action("cut")|0;break; } App.key(keycode); deleteTimeout=setTimeout(function(){ App.key(keycode); deleteInterval = setInterval(function() { App.key(keycode); }, REPEAT_RATE); },REPEAT_TIMEOUT); } else if(!keycode && !touchChanged[touchId]){ var index=getDataset(target,"data"); if(index===undefined) return; skipKey=true; //App.query(index); } },MENU_TIMEOUT); } |
|
最新喜欢:会爬树的小猪 |