Android朋友圈评论功能知识点记录
2016-01-09 13:16
453 查看
1、输入框获取焦点并弹出输入法
其他参考:
http://blog.sina.com.cn/s/blog_ab9fb58a0101kwhc.html http://blog.csdn.net/bear_huangzhen/article/details/45896333
edittext.setFocusable(true); edittext.setFocusableInTouchMode(true); edittext.requestFocus(); edittext.findFocus(); InputMethodManager inputManager = (InputMethodManager)edittext.getContext().getSystemService(Context.INPUT_METHOD_SERVICE); inputManager.showSoftInput(edittext, 0);2、点击指定布局以外的位置隐藏输入框并收回输入法
@Override public boolean dispatchTouchEvent(MotionEvent ev) { if (ev.getAction() == MotionEvent.ACTION_DOWN) { // View v = getCurrentFocus(); //点击输入框以外的位置隐藏 View v = linlay_reply; //点击指定布局以外的位置隐藏(linlay_reply位一个布局) if (isShouldHideInput(v, ev)) { InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); if (imm != null) { imm.hideSoftInputFromWindow(v.getWindowToken(), 0); } } return super.dispatchTouchEvent(ev); } // 必不可少,否则所有的组件都不会有TouchEvent了 if (getWindow().superDispatchTouchEvent(ev)) { return true; } return onTouchEvent(ev); } public boolean isShouldHideInput(View v, MotionEvent event) { if (v != null && (v instanceof LinearLayout)) { int[] leftTop = { 0, 0 }; //获取输入框当前的location位置 v.getLocationInWindow(leftTop); int left = leftTop[0]; int top = leftTop[1]; int bottom = top + v.getHeight(); int right = left + v.getWidth(); if (event.getX() > left && event.getX() < right && event.getY() > top && event.getY() < bottom) { // 点击的是输入框区域,保留点击EditText的事件 return false; } else { linlay_reply.setVisibility(View.GONE); //隐藏布局 return true; } } return false; }
其他参考:
http://blog.sina.com.cn/s/blog_ab9fb58a0101kwhc.html http://blog.csdn.net/bear_huangzhen/article/details/45896333
相关文章推荐
- 理解Android虚拟机体系结构(转)
- Android SurfaceView实战 打造抽奖转盘
- android 禁止scrollview 因控件变化自动滚动到底的方法
- Android 之自定义弹出提示框
- 优雅(简单粗暴)的使用AndroidStudio
- android SQLite getWritableDatabase VS getReadableDatabase
- Android ViewGroup使用小结
- Android自动化测试课程大纲
- (转)美团Android自动化之旅—适配渠道包
- (转)美团Android资源混淆保护实践
- android热更新
- (转)美团Android DEX自动拆包及动态加载简介
- Android 5.0新特性
- Maxwin-z/XListView-Android(下拉刷新上拉加载)源码解析(一)
- Android6.0系统权限那些事
- Eclips 开发 apk 使用android内部(com.android.internal) API
- Android5.0新特性 -- Material Design材料设计(1)
- Android如何缩放应用中的字体大小
- Android中插件开发篇之----应用换肤原理解析
- Android API Document Download