V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
iOS 开发实用技术导航
NSHipster 中文版
http://nshipster.cn/
cocos2d 开源 2D 游戏引擎
http://www.cocos2d-iphone.org/
CocoaPods
http://cocoapods.org/
Google Analytics for Mobile 统计解决方案
http://code.google.com/mobile/analytics/
WWDC
https://developer.apple.com/wwdc/
Design Guides and Resources
https://developer.apple.com/design/
Transcripts of WWDC sessions
http://asciiwwdc.com
Cocoa with Love
http://cocoawithlove.com/
Cocoa Dev Central
http://cocoadevcentral.com/
NSHipster
http://nshipster.com/
Style Guides
Google Objective-C Style Guide
NYTimes Objective-C Style Guide
Useful Tools and Services
Charles Web Debugging Proxy
Smore
kuoruan
V2EX  ›  iDev

如何将父 View 的滑动事件传递给它的子 View?

  •  
  •   kuoruan · 2017-07-27 19:40:46 +08:00 · 4489 次点击
    这是一个创建于 2680 天前的主题,其中的信息可能已经有所发展或是发生改变。
    一个 UIView 里边有个 UIScrollView,scrollview 小于父 View,现在想要在父 View 的空白区域上下滑动的时候能将滑动传递给 scrollview,以使 scrollview 滚动。
    滑动事件不在 scrollview 上,这种情况应该如何处理?
    8 条回复    2017-07-29 10:45:49 +08:00
    f19009
        1
    f19009  
       2017-07-27 21:51:58 +08:00
    可以修改 hitTest
    yautou
        2
    yautou  
       2017-07-27 22:36:27 +08:00 via iPhone
    简单点,滑动的时候设置 scrollview 的 offset 就行了呀
    cubesugar
        3
    cubesugar  
       2017-07-28 00:01:12 +08:00
    给 scrollview 的 content 设置 margin,不知是不是一种满足要求的方案,margin 的大小就是 空白区域的大小。app 里一些 profile 页面有这样处理过
    kuoruan
        4
    kuoruan  
    OP
       2017-07-28 09:52:36 +08:00
    @yautou 估计也就只能这样处理了,感谢
    SnailLin
        5
    SnailLin  
       2017-07-28 10:48:16 +08:00
    加个手势
    或者重写 func point(inside point: CGPoint, with event: UIEvent?) -> Bool 扩大响应面积
    方法应该还是很多的
    kuoruan
        6
    kuoruan  
    OP
       2017-07-28 11:09:08 +08:00
    @f19009 刚才看了一下 hitTest,貌似可以实现,是不是需要将 UIView 上的 ponit 转化到 scrollview 上?然后调用 scrollview 的 hitTest?
    Sapp
        7
    Sapp  
       2017-07-28 11:28:19 +08:00
    最简单的就是 父元素触发事件的时候获取 offsetTop 同时设置为子元素的 offsetTop。
    zichen0422
        8
    zichen0422  
       2017-07-29 10:45:49 +08:00
    1, 手势处理, UIView 方向滑动. 识别即可
    2, touch begin / touch end 识别滑动也可
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1793 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 16:34 · PVG 00:34 · LAX 08:34 · JFK 11:34
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.