最近做完朋友圈功能后,测试提出一个功能优化,在某些发布的动态下评论时软键盘和输入框遮当内容了,这个用户体验感觉不是很好,于是根据今日头条和其他热门的App评论时软键盘和输入框都是在内容下面.Scroller是一个专门用于处理滚动效果的工具类,可能在大多数情况下,我们直接使用Scroller的场景并不多,但是很多大家所熟知的控件在内部都是使用Scroller来实现的,如ViewPager、ListView等。郭神的这篇博客分析了原理[Android Scroller完全解析,关于Scroller你所需知道的一切]

效果图如下:

关键代码:

/*** 获取控件左上顶点Y坐标** @param view* @return*/
private int getCoordinateY(View view) {int[] coordinate = new int[2];view.getLocationOnScreen(coordinate);return coordinate[1];
}
@Override
public void onClick(int position, final View v) {final int itemBottomY = getCoordinateY(v) + v.getHeight();//item 底部y坐标if (likePopupWindow == null) {likePopupWindow = new LikePopupWindow(this, 0);}likePopupWindow.setOnPraiseOrCommentClickListener(new OnPraiseOrCommentClickListener() {@Overridepublic void onPraiseClick(int position) {Toast.makeText(MainActivity.this, "点赞成功", Toast.LENGTH_SHORT).show();likePopupWindow.dismiss();}@Overridepublic void onCommentClick(int position) {llComment.setVisibility(View.VISIBLE);etComment.requestFocus();CommonUtils.showSoftInput(MainActivity.this, llComment);likePopupWindow.dismiss();etComment.setHint("说点什么");etComment.setText("");v.postDelayed(() -> {int y = getCoordinateY(llComment);//评论时滑动到对应item底部和输入框顶部对齐recyclerView.smoothScrollBy(0, itemBottomY - y);}, 300);}@Overridepublic void onClickFrendCircleTopBg() {}@Overridepublic void onDeleteItem(String id, int position) {}}).setTextView(0).setCurrentPosition(position);if (likePopupWindow.isShowing()) {likePopupWindow.dismiss();} else {likePopupWindow.showPopupWindow(v);}
}

由于没有用截屏软件做动图,所以效果看上去不是很好.如有问题欢迎小伙伴们积极提出,我会及时改正.

完整代码地址如下:

ExpandTextView: 实现仿微信朋友圈列表多类型布局,图片点击放大、保存,包含点赞、评论、消息提醒、视频播放等功能

Android仿微信朋友圈4实现评论动态时输入框和软键盘自动定位到内容下面相关推荐

  1. Android自定义弹窗模仿微信,Android 仿微信朋友圈点赞和评论弹出框功能

    本文简单模仿微信朋友圈的点赞和评论弹出框,布局等细节请忽略,着重实现弹出框.发评论,及弹出位置的控制. 1. 微信弹出框 微信朋友圈的点赞和评论功能,有2个组成部分: 点击左下角的"更多&q ...

  2. android 微信评论功能,Android仿微信朋友圈点赞和评论功能

    最近在做朋友圈的项目,所以写一个Android仿朋友圈点赞和评论功能Demo,代码就是简单实现了一下功能,没有做优化,凑合看. 图文排列是用的RecyclerView实现的,弹窗效果是用的自定义的Po ...

  3. android 仿微信朋友圈 评论,2020年android 仿微信朋友圈 评论

    2020年android 仿微信朋友圈 评论 1.如果有人问我:那些艰难的岁月你是怎么熬过来的?我想我只有一句话回答:我有一种强大的精神力量支撑着我,这种力量名字叫"想死又不敢" ...

  4. 仿微信朋友圈点赞和评论功能

    仿微信朋友圈点赞和评论功能 最近在做朋友圈的项目,所以写一个Demo,代码就是简单实现了一下功能,没有做优化,凑合看 图文排列是用的RecyclerView实现的,弹窗效果是用的自定义的PopupWi ...

  5. Android仿微信朋友圈发图片和文字

    Android仿微信朋友圈发图片和文字的一个开源项目,其在github上的项目主页是:https://github.com/zhangphil/FangWeiXinPengYouQuanFaTuPia ...

  6. Android仿微信朋友圈2自定义点赞评论弹框

    最近在做类似微信朋友圈点赞评论的功能,有个点赞评论弹框交互,感觉效果很好,点击评论按钮弹框从按钮左边弹出,遇到了3个问题(弹出动画不对.弹框布局没有适配.弹出的位置显示不对),动画和布局好解决,弹出的 ...

  7. Android仿微信朋友圈3评论输入框及点击外部和列表滑动时隐藏输入框和键盘解决方法

    接着上一篇的评论点赞弹框之后,这次来说说微信的评论输入框,点击屏幕外部评论框和键盘消失,滑动列表时输入框和键盘也要消失,这里不是说一定要舔微信啥的,只是单纯从技术角度出发,分析原理和实现,解决我们自己 ...

  8. Android仿微信朋友圈7实现点赞功能

    前言: 之前一直有朋友问我点赞怎么实现?今天趁着休息时间整理出来,其实点赞的功能和用户评论差不多,都是显示一个用户列表,只不过评论有评论内容和回复评论功能.实现点赞的思路如下: 1.当用户点击点赞按钮 ...

  9. Android仿微信朋友圈6之实现消息提醒功能

    之前有朋友问我消息提醒咋实现,我一直没有整理出来,今天就放出来.微信朋友圈的消息提醒就是收到朋友的评论后背景底部显示消息条数和评论用户,顶部是一张相册背景和当前用户昵称头像. 1.消息提醒的布局如下: ...

最新文章

  1. Android 事件分发 简单学
  2. 以下可以采用python语言保留字的是-以下选项中,不是Python语言保留字的是_学小易找答案...
  3. 一部手机失窃引发的惊心动魄的战争,你是个合格的程序猿吗?
  4. 猛增 110K Star!年增长数最多的 10 大顶级前端学习资源项目!
  5. 颈椎前路caspar撑开器_82岁女性神经根型颈椎病,你该怎么办?手术还是不手术?...
  6. 关于parseInt面试题
  7. Java并发编程实战~原子类
  8. #史上最详解# IIS服务器查看log日志
  9. 从石头剪刀布浅谈算法的作用
  10. 12c创建为容器数据库_详解oracle12c数据库跨小版本迁移步骤
  11. SSO —— 单点登录CAS与OAuth2
  12. Eclipse 官方简体中文语言包下载地址及安装方法
  13. 洛必达法则介绍及使用注意点
  14. VMWare安装配置Win7详解
  15. Android 动画之 View动画 和 帧动画
  16. python程序分析csv文件并绘制趋势图
  17. 计算机中URL是指什么 ?
  18. 更新后的微信新功能,你知道吗?
  19. 计算机网络体系结构划分
  20. English Learning - L1-2 窥得大段表达门径 2022.12.8 周四

热门文章

  1. 微信公众号数据2019_历史微信公众号排名,微信公众号新榜排名
  2. CentOS 7 minimal安装完成之后安装图形界面
  3. 北航数理统计大作业_2019复旦大学大数据学院统计学硕总分411考研初试经验
  4. 上海居住证续签流程须知
  5. Java实验项目三——平面图形和立体图形抽象类
  6. 计算机教学研修心得英语,研修心得体会(通用10篇)
  7. DisGeNET的初步认识
  8. 如何学计算机作文3000到500,作文学习电脑500字(共8篇)
  9. 【原创】博物馆库房环境空气质量无线温湿度监控技术性方案
  10. DNS加速之“智能DNS”跟“双线加速”、“CDN加速”的区别