【问题标题】:IOS: Disable scroll of a superview in IOSIOS:在 IOS 中禁用超级视图的滚动
【发布时间】:2016-10-04 23:32:20
【问题描述】:

我正在处理执行以下操作的遗留代码

  1. 创建一个子视图控制器并将其添加到父控制器
  2. 子视图控制器呈现在父 VC 中。所以动画从底部到顶部开始,但只到特定位置,距离顶部 100 的高度。
  3. 所以我在 (0,0)、(SCREEN_WIDTH, 0) 和 (0, 100) 和 (SCREEN_WIDTH, 100) 的范围内显示了一个超级视图
  4. 子视图控制器视图显示在其下方。
  5. 如果您点击属于父视图的屏幕的任何部分,您可以向上和向下滑动,使其滚动。我不想要那个。加载子视图时如何禁用超级视图的滚动?

我尝试了以下解决方案。

  1. 创建父 VC 实现的委托协议以尝试将内容设置为 CGPointZero。这个委托是从子视图中调用的。
  2. 创建父 VC 实现的委托协议,并从执行以下操作的父 VC(具有自定义 UIScrollView)调用以下函数

    self.view.scrollEnabled=NO;
    

这个选项对我也不起作用。我还有其他方法可以做到这一点吗?

【问题讨论】:

  • 那个可滚动的东西是tableview?
  • 不,它是一个自定义 UIScrollView,它有一些标签,UICollectionView 显然在底部有一个 UICollectionViewCells 和一个公司全局页脚。

标签: ios objective-c uiscrollview superview


【解决方案1】:

以清晰的颜色呈现子视图控制器视图。在该视图内部,通过这样做“但只能到特定位置,从顶部离开 100 的高度”来制作子视图。所以从父母的角度来看,没有什么是可触摸的。或者做任何你在做的事情,但是当孩子即将呈现禁用父控制器视图时,用户交互启用为“否”或用清晰的彩色视图覆盖它。当孩子错过时,启用父控制器视图或删除该封面视图。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-30
    • 2013-09-28
    相关资源
    最近更新 更多