【问题标题】:Swipe view like SnapChat像 SnapChat 一样滑动视图
【发布时间】:2014-10-16 06:48:44
【问题描述】:

我正在这样做:

    self.addChildViewController(blackView)
    self.scrollView.addSubview(blackView.view)
    blackView.didMoveToParentViewController(self)

但即使我只这样做,代码也可以工作

    self.scrollView.addSubview(blackView.view)

所以我想知道忽略第一行和最后一行是否会给应用程序带来问题?

【问题讨论】:

    标签: swift swipe gif ios8


    【解决方案1】:

    调用这些方法允许blackView 控制器正确地通过UIViewController 生命周期,就像调用viewWillAppear:',viewDidappear:` 等。

    你甚至可以添加willMoveToParentViewController:

    self.addChildViewController(blackView)
    self.scrollView.addSubview(blackView.view)
    blackView.didMoveToParentViewController(self)
    

    如果您要移除控制器,则必须执行类似的过程:

    blackView.willMoveToParentViewController(nil)
    blackView.view.removeFromSuperview
    blackView.removeFromParentViewController
    

    That link 也进行了解释,并附有更多示例。

    【讨论】:

      【解决方案2】:

      你在 Objective-C 中有一个很好的例子:

      https://github.com/devenergy/SpinKit-ObjC/tree/master/Demo/SpinKit

      一些代码:

      UIScrollView *scrollView = [[UIScrollView alloc] init];
      scrollView.pagingEnabled = YES;
      scrollView.alwaysBounceVertical = NO;
      scrollView.alwaysBounceHorizontal = YES;
      
      UIView *panel1 = [[UIView alloc] initWithFrame:CGRectOffset(screenBounds, screenWidth * index, 0.0)];
      [scrollView addSubview:panel1];
      
      UIView *panel2 = [[UIView alloc] initWithFrame:CGRectOffset(screenBounds, screenWidth * index, 0.0)];
      [scrollView addSubview:panel2];
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-09-08
        • 2013-04-17
        • 2019-12-13
        • 2015-08-18
        • 2016-03-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多