qt qml StackView 触摸滑动返回(swiping pop)
模仿ios的效果
点击item触发push 第二层界面通过动画从右边往左边弹出
然后在最左边向右滑动返回上一层
StackView {id: stackViewanchors.fill: parentinitialItem: mainViewproperty real hideX: 0 - width * 0.3pushEnter: Transition {XAnimator {from: widthto: 0duration: 200easing.type: Easing.OutCurve}}pushExit: Transition {XAnimator {from: 0to: stackView.hideXduration: 200easing.type: Easing.OutCurve}}popEnter: Transition {XAnimator {from: stackViewMouseArea.prevItem === null ?stackView.hideX : stackViewMouseArea.prevItem.xto: 0duration: 200easing.type: Easing.OutCurve}}popExit: Transition {XAnimator {from: currentItem.xto: widthduration: 200easing.type: Easing.OutCurve}}}MouseArea {id: stackViewMouseAreaanchors.fill: parentenabled: stackView.depth > 1scrollGestureEnabled: false
// propagateComposedEvents: trueproperty bool pressValid: falseproperty bool moveValid: falseproperty real pressedXproperty real currentXproperty var prevItem: nullonPressed: {if( mouseX < 10&& mouseY > 60&& stackView.depth > 1 ){pressValid = true;pressedX = mouseXcurrentX = stackView.currentItem.xprevItem = stackView.get(0)}else {mouse.accepted = false}}onPositionChanged: {if( pressValid && !moveValid ) {if( mouseX - pressedX > 20 ) {moveValid = true}}if( moveValid ) {prevItem.visible = truevar x = mouseX - pressedX + currentXif( x > stackView.currentItem.width ) {x = width}if( x < 0 ) {x = 0}var p = stackView.currentItem.x / stackView.currentItem.widthstackView.currentItem.x = xprevItem.x = stackView.hideX - (stackView.hideX * p)}}onReleased: {if( pressValid ) {pressValid = falseif( moveValid ) {moveValid = falsestackView.pop()}}}}
qt qml StackView 触摸滑动返回(swiping pop)相关推荐
- android触摸滑动监听,Android 滑动监听的实例详解
Android 滑动监听的实例详解 摘要: ScollBy,ScollTo是对内容的移动,view.ScollyBy是对view的内容的移动 view,ScollTo是对内容的移动(移动到指定位置), ...
- android 用代码模拟滑动,Android开发之使用150行代码实现滑动返回效果
今天带大家实现滑动返回效果.,具体内容如下所示: 先看看效果图: 因为没有具体内容,也没有简书的图片资源,所以稍微简陋了点. 但是依然不妨碍我们的效果展示~ OK,接下来惯例,通过阅读本文你能学习到: ...
- 苹果侧边滑动返回_一个丝滑的全屏滑动返回手势
全屏返回手势 自 iOS7 之后,Apple 增加了屏幕边缘右划返回交互的支持,再配合上 UINavigationController 的交互式动画,pop 到上一级页面的操作变的非常顺畅和丝滑,从此 ...
- Qt QML 菜单/目录/工具栏的全面攻略(TabBar、MenuBar、ToolBar、Button定制、Listview、Repeater)
Qt QML 菜单/目录/工具栏的全面攻略 1. TabBar的工具栏/目录 1.1 演示 1.2 关键控件 1.3 源码 2 MenuBar 菜单 2.1 演示 2.2 关键控件 2.3 源码 3 ...
- Qt / Qml 中支持多国语言
[缘起] 最近找到一个看起来比较好用的开源工具( 然鹅不太会用 ),但整个界面都是英文的. 不过由于是 Qt 写的,所以就尝试自己做些汉化. 然后了解到不少实现多国语言相关的技术( 以及一些坑 (‾◡ ...
- QT 进度条、滑动条、调色板、取色器
QT 进度条.滑动条.调色板.取色器 一.简述 记--QT 进度条.滑动条简单的使用例子,调色板练习. 例子1:链接: https://pan.baidu.com/s/1N ...
- Android Activity 滑动返回。支持微信滑动返回样式、横屏滑动返回、全屏滑动返回
BGASwipeBackLayout-Android 项目地址:bingoogolapple/BGASwipeBackLayout-Android 简介:Android Activity 滑动返回. ...
- android仿苹果滑动,Android 仿Ios 滑动返回上一目录
IMG_0026.JPGSwipeBackLayout是一个在Android平台上实现了Activity滑动返回的库. 实现了左,右,上,下四种手势返回的功能,在ios里滑动返回是系统自带可以配置的功 ...
- iOS 一个丝滑的全屏滑动返回手势
原文链接:http://blog.sunnyxx.com/2015/06/07/fullscreen-pop-gesture/ 全屏返回手势 自 iOS7 之后,Apple 增加了屏幕边缘右划返回交互 ...
- Qt之自定义控件(滑动开关按钮)+源码
Qt之自定义控件(滑动开关按钮) 目录 Qt之自定义控件(滑动开关按钮) 说明 主要实现 实现源码一 实现源码二 说明 本文主要介绍QT的两种滑动开关按钮的实现,附上源码记录以备二次开发 源码附基本注 ...
最新文章
- SAP MM 创建退货类型的公司间STO,报错 -No delivery type for returns processing assigned to item 00010-
- SecondarySort 原理
- linux如何修改主机名
- matlab 画图比例缩小图片大小,Matlab 画图字体,字号的设定,图片大小和比例
- php restful yii,yii2 restful 风格搭建(一)
- 不可小视的贝叶斯(二)
- 02-04 Python库-faker
- .net站点配置完后常见报错及解决措施
- Panoply软件安装
- 文件删除后未释放磁盘
- Win10 Print Spooler 一直停止服务
- 从HTTP的安全问题到HTTPS
- 磁盘精灵 4.5 版本
- NLP - ngram - N元语言模型 python 实现
- 【转】用深度学习揭示数据的因果关系
- 软考嵌入式系统设计师2012年上午试题总结
- 网页源文件星号怎么显示_怎么查看网页星号密码?4种浏览器网页星号点号密码查看方法介绍...
- 右击文件夹转圈圈,有时卡死
- 记一次微信支付回调失败的修复
- ASUS TUF GAMING B660M PLUS WIFI D4 i5-12600K RX6650XT 黑苹果efi引导文件