【问题标题】:Resize the View inside a UIViewController调整 UIViewController 中的视图大小
【发布时间】:2013-04-12 10:01:04
【问题描述】:

我在 Storyboard 应用程序中有一个 UIViewController

在设置 segue 时会自动添加导航栏,并且我已从 IB 将UIToolBar 添加到底部。

在运行时,UIScrollView 作为视图添加到视图控制器。导致的问题是它与之前添加的UIToolBar 重叠。所以我添加了以下行并将工具栏拉回前面。

self.mailOptionsToolbar.layer.zPosition = 1;

现在看起来不错,但还有一个小问题。当我单击UIToolBar 中的工具栏按钮项时,它们不起作用。比如说,在滚动视图中,如果 UITextbox 位于这些按钮的正下方,当我单击它们时,它会弹出键盘!就像点击通过UIToolBar 下降到下面的 UITextField 一样。我怎样才能阻止这种情况发生?

我也在想另一种方法。那就是调整UIScrollBar 的大小以仅适合空白区域,这样它就不会首先覆盖UIToolBar,从而不会产生这个点击问题。但我不知道如何使在运行时添加的UIScrollView 仅适合白色区域。

我们将不胜感激对这两个方面的建议。

谢谢。

【问题讨论】:

    标签: ios cocoa-touch uiviewcontroller uiscrollview uitoolbar


    【解决方案1】:
        CGFloat screenHeight = [UIScreen mainScreen].bounds.size.height;
        // 20.0f is for status bar height and 44.0f is for navigation bar
        CGFloat scrollViewHeight = screenHeight - 20.0f - 44.0f - self.mailOptionsToolbar.frame.size.height;
        CGRect frame = [CGRectMake(0, 0, 320.0f, scrollViewHeight)];
        UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:frame];
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-08-30
      • 1970-01-01
      • 2011-01-03
      • 1970-01-01
      • 2013-05-01
      • 1970-01-01
      • 2011-03-18
      • 1970-01-01
      相关资源
      最近更新 更多