【问题标题】:Horizontal or Vertical Scrolling But Not Both水平或垂直滚动​​,但不能同时滚动
【发布时间】:2013-05-22 05:20:22
【问题描述】:

有没有办法创建具有垂直或水平滚动但不能同时滚动的自定义视图? 在纵向模式下,应启用垂直滚动并应禁用水平滚动 在横向模式下,启用水平滚动并禁用垂直滚动。

【问题讨论】:

  • 只需在方向更改事件中正确更新contentSize 属性,它应该会自动工作。

标签: ios objective-c uiscrollview horizontalscrollview vertical-scrolling


【解决方案1】:

这一切都取决于你的 UIScrollView 的内容大小。如果内容大小超出了 scrollView 框架的高度 - 您将启用水平滚动。如果超过高度,您将启用垂直滚动。

【讨论】:

    【解决方案2】:

    您可以根据要转向的方向设置 UIScrollView 的 contentSize 属性。

    - (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration {
    
        if(UIInterfaceOrientationIsPortrait(toInterfaceOrientation) {
            [self.scrollView setContentSize:CGSizeMake(self.scrollView.bounds.size.width, scrollViewContentHeight)];
        } else {
            [self.scrollView setContentSize:CGSizeMake(scrollViewContentWidth, self.scrollView.bounds.size.height)];
        }
    }
    

    【讨论】:

    • 谢谢。我明天要试试这个解决方案。另一个问题,是否可以不显示滚动条图像?
    • 可以,只要将showsHorizo​​ntalScrollIndicator或showsVerticalScrollIndicator设置为NO即可。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-23
    • 1970-01-01
    • 2012-12-29
    • 2021-11-13
    • 2014-01-09
    • 1970-01-01
    相关资源
    最近更新 更多