【问题标题】:Storyboard white space at top in all model controllers所有模型控制器顶部的故事板空白
【发布时间】:2013-05-09 08:24:25
【问题描述】:

我在所有容器的顶部都有一个空格。如果我进行模型转换,则所有导航控制器顶部的空白都清晰可见。

这个空间大约是 20 像素。

如何去除这个空白..??

有什么建议吗???

【问题讨论】:

  • 我有这个问题,检查这个问题:stackoverflow.com/questions/1054539/…
  • 感谢您的回复,但我的问题不同
  • 您需要提供更多细节,包括空间出现前后的图片。您如何执行此操作的代码以及有关您添加的任何花哨或额外内容的任何信息,而不仅仅是调用当前模式视图。例如。动态创建子视图以绘制屏幕等。

标签: ios objective-c xcode storyboard


【解决方案1】:

您在问题中并未真正向我们提供足够的详细信息,但最可能导致问题的原因是您正在使用视图控制器的视图框架而不是边界以编程方式为视图控制器实例化子视图。

如果在您的 viewDidLoad 方法中您执行以下操作:

- (void)viewDidLoad
{
    [super viewDidLoad];
    MyView* myView = [[MyView alloc] initWithFrame:self.view.frame];
    [self.view addSubview:myView];
}

然后您的视图将初始化为偏移 20px,因为您的 self.view.frame 的原点是 (0, 20),以便不与导航栏重叠。如果您随后将子视图的框架设置为具有相同的原点,则意味着视图的原点将进一步向下平移 20 px(它不是真正的像素而是点,因为无论它是否是视网膜显示器,值都保持不变,但无论如何) .

因此,如果您想添加一个子视图,该子视图的大小与呈现它的视图控制器的视图一样大,那么您应该始终使用以下命令对其进行初始化:

    MyView* myView = [[MyView alloc] initWithFrame:self.view.bounds];

我希望这会有所帮助,在您的问题中您没有给我们太多的帮助,将来尝试向我们(很多很多)提供更多关于您所做的事情的详细信息,无论是在代码中还是在故事板。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-10-25
    • 2018-06-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-03
    • 2013-02-03
    • 2013-01-10
    相关资源
    最近更新 更多