标题:QML实现类似安卓桌面管理的功能的若干问题
作者:方丈师兄
日期:2018-01-28 14:15
内容:
我想利用QML的MVC来实现类似安卓桌面管理的小程序,主要操作逻辑:左右滑动翻页,图标拖放换位。
滑动翻页:利用ListView中的snapMode: ListView.SnapOneItem来实现一次滑动一个页面,每一个页面中嵌入一个(4x4)的GridView,用来放置图标,也就是说ListView的每一个Item是一个4x4的GridView。布局如下(红色表示图标):
现在布局和图标显示已经实现,滑动也可以,就是图标拖动时遇到了问题,因为如果能够点击图标,就会导致滑动翻页如果鼠标pressed点在图标上时则不会响应滑动;如果保证完整滑动翻页,则无法点击到图标触发鼠标事件。
是不是要实现完整的滑动翻页和图标鼠标事件,需要设置好层级关系,将图标至于最底层,然后判断鼠标点击图标时触动了鼠标移动事件,也就是翻页,此时应该讲鼠标事件下发给ListView,让其响应翻页动作。
本人是QML新手,不知道ListView是不是自身就有这种处理逻辑了,求高人指点!
还有就是如何识别图标的位置?
#1 [方丈师兄 01-28 14:16]
自己顶,顶,顶!
#2 [itlevup 01-29 19:49]
设计上去掉GridView,用Row和Column实现试试,或者Grid
#3 [方丈师兄 02-04 22:49]
去掉GridView的话,那就每一页都得加Row等布局,而不能像GridView那样根据Item的数目来自动生成页数
#4 回 方丈师兄 的帖子 [itlevup 02-28 11:41]
方丈师兄:去掉GridView的话,那就每一页都得加Row等布局,而不能像GridView那样根据Item的数目来自动生成页数(2018-02-04 22:49)
你自己定义一个property 名字也叫count,自己想咋动态生产就怎么生产,多爽。理解多少在于你了