在使用PageView做关卡选择界面时,发现滑动切换界面很不好用,用以下代码解决:
新建一个类继承PageView:
class MyPageView : publicPageView { public: void handleReleaseLogic(constPoint &touchPoint) override { if (_pages.size() <=0) { return; } Widget* curPage = _pages.at(_curPageIdx); if (curPage) { Point curPagePos = curPage->getPosition(); ssize_t pageCount = _pages.size(); float curPageLocation = curPagePos.x; float pageWidth = getSize().width; float boundary = pageWidth/2.0f; if(boundary > 50.0f)boundary = 50.0f;//调整灵敏度 if (curPageLocation <= -boundary) { if (_curPageIdx >= pageCount-1) { scrollPages(-curPageLocation); } else { scrollToPage(_curPageIdx+1); } } else if (curPageLocation >= boundary) { if (_curPageIdx <=0) { scrollPages(-curPageLocation); } else { scrollToPage(_curPageIdx-1); } } else { scrollToPage(_curPageIdx); } } } CREATE_FUNC(MyPageView); };
在使用PageView的地方用MyPageView就可以了,非常好用。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。