位置: 编程技术 - 正文

[置顶] Android-通过SlidingPaneLayout高仿微信6.2最新版手势滑动返回(一)([置顶]马粥街残酷史)

编辑:rootadmin

推荐整理分享[置顶] Android-通过SlidingPaneLayout高仿微信6.2最新版手势滑动返回(一)([置顶]马粥街残酷史),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:[置顶]电影名字《收件人不详》,[置顶]游戏名:chivalry2,[置顶]公主大人接下来是拷问时间31,[置顶]JM259194,[置顶]JM259194,[置顶]JM259194,[置顶]JM259194,[置顶]JM259194,内容如对您有帮助,希望把文章链接给更多的朋友!

最近更新了微信版本到6.2,发现里面有个非常好的体验,就是在第二个页面Activity能手势向右滑动返回,在手势滑动的过程中能看到第一个页面,这种体验非常赞,这里高仿了一下。这里使用的是v4包里面的SlidingPaneLayout来手势滑动,在下一篇博文中将采用SlidingMenu来高仿,下面是SlidingPaneLayout高仿后的效果,效果还是蛮不错的。

最重要的是,每一个页面都是Activity,而非Fragment哦,使用Activity和正常的Activity一样

这里给出demo下载地址github

下面讲一下实现的原理,里面有几个难点需要说一下

手势滑动在滑动过程中看到第一个页面内容

解决方案:

手势滑动借用了v4包里面的SlidingPaneLayout,因为这个SlidingPaneLayout效果和我们要实现的效果非常像,所以就想着通过这个来改造,SlidingPaneLayout帮我们已经处理好了手势事件在滑动过程中看到下面的Activity页面就非常简单了,只要把我们当前的Activity样式设置成透明就OK了下面一步一步来讲解实现原理:

首先第一步:因为我们有的页面需要滑动返回,有的页面不需要滑动返回,所以这里抽取了一个父类BaseSwipeBackActivity,在你项目里需要加手势滑动返回的Activity,你只要继承BaseSwipeBackActivity就可以了,不需要的不用继承它。

这里先看一下BaseSwipeBackActivity的源码实现:

[置顶]
        Android-通过SlidingPaneLayout高仿微信6.2最新版手势滑动返回(一)([置顶]马粥街残酷史)

看onCreate方法,这里通过java反射修改了SlidingPaneLayout的属性mOverhangSize的值,因为这个值是个私有属性,默认值是,这个值的大小是SlidingPaneLayout左菜单离右边屏幕边缘的距离,因为我们要左菜单全屏幕大小,所以要让mOverhangSize为0,这里通过java反射来修改,代码如下:

把左边菜单设置好全屏幕之后,我们给SlidingPaneLayout加两个子布局,一个是左侧菜单,一个是内容显示容器布局,左侧菜单布局我们要设置成透明的,因为在手势滑动的时候,我们要看到底下的Activity页面,而内容显示布局就不应该是透明的,这里我加了白色北背景,看下面代码:

随着手势滑动,慢慢的显示出菜单,因为整个Activity是透明的,左侧菜单也是透明的,这样就可以透过左侧菜单看到下面的Activity页面,当左侧菜单完全打开后,我们要结束掉这个Activity,这里监听了SlidingPaneLayout的public void onPanelOpened(View view)方法,这个方法的意思就是菜单打开后执行的操作,我这里重写了这个方法,看代码如下:

让菜单打开后结束掉这个Activity,这样就实现了手势滑动返回上一个页面

这样我们的BaseSwipeBackActivity就写好了,那怎么来用呢,这里我们创建一个NextActivity,继承之BaseSwipeBackActivity,其他的和普通的Activity都一样,看源码实现,其实非常简单:

AndroidManifest.xml声明NextActivity :

这里添加了一个主题样式@style/JK.SwipeBack.Transparent.Theme,这里要把这个Activity设置成透明样式,这样才能透过这个Activity看到下面的Activity,@style/JK.SwipeBack.Transparent.Theme源码如下:

sliding_in_right.xml源码如下:

sliding_out_right.xml源码如下:

这样我们的手势滑动返回Activity就大功告成了,这里给出demo的下载地址github

Android WebView学习 AndroidWebView学习文章来源:小小懒羊羊个人知识管理库权限:uses-permissionandroid:name=android.permission.INTERNET/在WebView中使用JavaScriptWebViewmyWebView=(WebView)findViewByI

6.9 android相机预览最佳分辨率计算 SwipeRefreshLayout下拉刷新的使用 仿开源中国api包内容的网络访问结构 这几天做一个自定义相机界面,发现相机老是被拉伸,于是自己想了一个自动选择最佳的尺寸,计算要求如下:1.尺寸越大越好,2.宽高比越接近越好标准

android:imeOptions属性 默认情况下软键盘右下角的按钮为下一个,点击会到下一个输入框,保持软键盘设置android:imeOptions=actionDone,软键盘下方变成完成,点击后光标保持在原

标签: [置顶]马粥街残酷史

本文链接地址:https://www.jiuchutong.com/biancheng/385997.html 转载请保留说明!

上一篇:Android Design Support Library

下一篇:Android WebView学习(androidstudio webview)

  • 汇算清缴退税会计科目
  • 附加税减免要做哪些科目
  • 增值税专用发票怎么开
  • 广告公司与广告公司合作的协议
  • 增值税起征点的规定只适用于
  • 可以从开发成本直接结转至主营业务成本吗
  • 非贸易付汇去银行汇款流程
  • 国际货运代理0税率和免税
  • 补缴企业所得税的计算公式
  • 没收不还
  • 帮客户代付保证金违法吗
  • 房租发票上税的分录怎么写?
  • 劳务分包服务费率
  • 哪些是非累计带薪缺勤?
  • 外购低值易耗品可以抵扣进项税额吗
  • 企业一次性补助金是多少标准
  • 调整薪酬结构
  • 工程税票怎么开需要交多少
  • 内账一定要权责发生制吗
  • 土地闲置费能否扣除
  • 销售净利率计算公式是什么
  • 公司开一般户弊端
  • 企业增资还需要增资账户么
  • mac怎么开机
  • 腾讯电脑管家中蓝牙在哪
  • 事业单位自建办公用房
  • 安全生产费开工前支付
  • PHP:curl_close()的用法_cURL函数
  • 销售多余材料的收入会计分录
  • 国家税务总局关于个人因解除劳动合同
  • php框架开发教程
  • 现金流量表 科目
  • 在php中如何对多条记录进行分页
  • vue3.0路由配置
  • Cookie和Session的区别,各自的使用方法及常用操作
  • 事业单位新会计制度固定资产
  • python初学笔记
  • 注册资本增加了怎么做账
  • 帝国cms php8.0
  • 返利销售的增值税怎么算
  • 没有收入该怎么办
  • 个税代扣代缴手续费返还需要缴纳增值税吗
  • 新办企业小规模纳税人多久可以申请发票增量
  • 集团与子公司资产的区别
  • 汽车销量多少才能赚钱
  • 资产负债表编制
  • 用于员工福利的专票可以抵扣吗
  • 建筑企业结转收入方法
  • 固定资产丢失进哪个科目
  • 短期理财会计处理
  • 贸易公司成本如何计算
  • 出租周转材料的租金会计科目
  • 所得税汇算清缴前取得跨年发票
  • 一般纳税人只有销项没有进项
  • 发票金额太大怎么办
  • 如何证明自己是中国人
  • 营业外收入核算的内容有
  • 进项税和销项税怎么理解
  • 公对公转账多久能到账
  • mysqli查询
  • WIN10系统更新之后无法启动
  • mac系统如何安装双系统
  • 怎么查看macbook air序列号
  • 手机更新升级版本下载
  • linux怎么在桌面创建文件
  • linux硬盘io
  • lrucache算法
  • css跑马灯效果
  • linux的启动顺序
  • 查看进程使用的端口
  • python 入门
  • nodejs基础知识
  • 按钮点击后消失
  • android开发遇到的技术难点
  • 甘肃职称申报评审入口官网
  • 福建省税务局举报中心
  • 设计费需要交税吗
  • 水资源税征收标准2022
  • 河南省优秀班主任2022
  • 广东省国家税务总局稽查局局长
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设