【问题标题】:How do I center a UIImageView either programmatically or in the storyboard如何以编程方式或在情节提要中居中 UIImageView
【发布时间】:2014-11-02 15:49:07
【问题描述】:

我有一个想要在 3.5 和 4 英寸屏幕上居中的图像视图。出于某种原因,这被证明是不可能的。我不知道我为什么要为此苦苦挣扎,这似乎很基本。

是否可以使用约束或其他方式说“将图像在两个屏幕上居中”,因为它在 iPhone 5 上居中,但在 iPhone 4 上,它与顶部对齐,并切断了底部图像,因为图像是 iPhone 5 屏幕的大小。

【问题讨论】:

    标签: iphone xcode uiimageview storyboard constraints


    【解决方案1】:

    如果您想在没有自动布局和约束的情况下执行此操作,那么以编程方式将是这样的。

    UIImage *yourImage     = ....
    UIImageView *imageView = [[UIImageView alloc] initWithImage:yourImage];
    [self.view addSubview:imageView];
    
    CGSize superviewSize = imageView.superview.frame.size;
    imageView.center     = CGPointMake((superviewSize.width / 2), (superviewSize.heigth / 2));
    

    【讨论】:

    • 当我尝试:imageView.center = CGPointMake((superviewSize.width / 2), (superviewSize.height / 2));它留在了同一个地方,所以我做了: imageView.center = CGPointMake((superviewSize.width / 2), (superviewSize.height / 2) + 100);只是为了测试,它仍然没有移动。我有点困惑
    • 您是否关闭了自动布局并删除了包含您的图像视图的情节提要中的所有约束?
    【解决方案2】:

    转到您的故事板文件。选择您的 UIImageView 并控制拖动到它的超级视图。然后,您应该看到一些选项。点击“在容器中水平居中”,然后重复“在容器中垂直居中”。

    如果你想让 UIImageView 覆盖整个 superview 然后点击“Leading Space to Container Margin”并重复“Trailing Space to Container Margin”、“Top Space to Top Layout Guide”和“Bottom Space to Bottom Layout指南”。

    【讨论】:

      猜你喜欢
      • 2010-12-28
      • 1970-01-01
      • 2019-10-15
      • 1970-01-01
      • 2013-09-20
      • 1970-01-01
      • 1970-01-01
      • 2015-07-26
      • 1970-01-01
      相关资源
      最近更新 更多