Android模拟键盘输入功能的实现
16lz
2021-01-26
在做关于输入框的操作指引时,用动态的输入效果比用静态的图片指示效果会好很多,本文结合最近需要实现的一个搜索输入操作指引的功能介绍一下android平台模拟键盘输入的实现。
在android上不知道怎么录制gif的动态图,直接截图看一下效果吧,具体看demo就行啦。
实现起来很简单,开一个线程,通过sleep控制输入字符的间隔时间,封装一个模拟键盘输入的方法,最终代码是这样子的:
public class TypeInActivity extends BaseActivity {@Overridepublic void setContentView() {setContentView(R.layout.activity_type_in_layout);}@Overridepublic void findViews() {}@Overridepublic void getData() {}@Overridepublic void showConent() {showGuide( );}public void onClick( View v ){switch( v.getId( ) ){case R.id.searchBtnId:{}break;default:{}break;}}private void showGuide( ){new Thread( new Runnable( ) {@Overridepublic void run() {try {Thread.sleep( 1000 );} catch (InterruptedException e1) {e1.printStackTrace();}// “旋转”的拼音int[] keyCodeArray = new int[]{KeyEvent.KEYCODE_X,KeyEvent.KEYCODE_U,KeyEvent.KEYCODE_A,KeyEvent.KEYCODE_N,KeyEvent.KEYCODE_SPACE,KeyEvent.KEYCODE_Z,KeyEvent.KEYCODE_H,KeyEvent.KEYCODE_U,KeyEvent.KEYCODE_A,KeyEvent.KEYCODE_N};for( int keycode : keyCodeArray ){try {typeIn( keycode );Thread.sleep( 200 );} catch (InterruptedException e) {e.printStackTrace();}}}}).start( );}private void typeIn( final int KeyCode ){try {Instrumentation inst = new Instrumentation();inst.sendKeyDownUpSync( KeyCode );} catch (Exception e) {Log.e("Exception when sendKeyDownUpSync", e.toString());}}}
BaseActivity.java:(个人已经习惯这样写了。。。)
public abstract class BaseActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);init( );}private void init( ){setContentView( );findViews( );getData( );showConent( );}public abstract void setContentView( );public abstract void findViews( );public abstract void getData( );public abstract void showConent( );}再找一个模拟打字的音效,在模拟输入的时候播放打字音效,效果还是可以的。。。
更多相关文章
- Android(安卓)调试桥|adb命令卸载系统软件
- android 模拟器调用系统照相机
- 问题小结(14)-旋转动画Rotate
- 【Android(安卓)界面效果8】Android中的样式与主题总结
- android仿IOS页面回弹效果
- Android(安卓)TextView更换字体
- Android(安卓)tools & sample data: Make preview great again
- 未root的Android手机抓包方法(非tcpdump)
- Android(安卓)UI设计之自定义SwitchButton开关,实现类似IOS中UISw