【问题标题】:How to set viewcontroller background image on iOS6 in 4 inch screeniOS6 4寸屏如何设置viewcontroller背景图片
【发布时间】:2014-02-25 05:06:45
【问题描述】:

我需要澄清一下,我的图像大小为 640×1136,它设置为视图控制器背景全视图,这在 iOS 7 中设置得很好,因为状态栏与视图合并。

 self.view.backgroundColor=[UIColor colorWithPatternImage:[UIImage imageNamed:@"iOS-7.png"]];

但在 iOS 6 中我无法设置 640×1136 的大小,此图像底部大小是隐藏的。如何在 iOS 6 中处理视图控制器背景上的图像

我该如何解决这个问题

   UIImageView *imageView = [[UIImageView alloc] initWithFrame:self.view.bounds];
    imageView.contentMode = UIViewContentModeScaleToFill;
    [imageView setImage:[UIImage imageNamed:@"iOS-7.png"]];
   // self.view.backgroundColor = [UIColor colorWithPatternImage:imageView.image];

    [self.view addSubview:imageView];

如果我使用上面的代码只能正常工作。感谢@Greg 的回答,但我需要知道为什么设置 self.view backgroundColor 会出现屏幕问题

【问题讨论】:

    标签: ios iphone objective-c ios6 ios7


    【解决方案1】:

    因此,iOS 7 将状态栏默认设置为半透明,并允许内容视图出现在其后面。这不是 iOS 6 的默认设置。因此,您会看到正常视图从状态栏下方开始,并且当您(未)正确缩放视图时,它被剪裁了。

    对于 iOS 6 及以下版本,您可以获得类似的效果。设置状态栏为半透明:

    [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleBlackTranslucent];
    

    然后,对于您拥有的每个视图控制器,设置:

    myViewController.wantsFullScreenLayout = YES;
    

    这应该会导致您的视图延伸到半透明状态栏下方,类似于 iOS 7 的风格。

    【讨论】:

      【解决方案2】:

      当你在 imageView 上设置图片时设置缩放模式:

      imageView.contentMode = UIViewContentModeScaleAspectFit;
      

      这应该会缩放您的图像以适合视图的全尺寸。

      //扩展

      当您使用 colorwithpattern... 时,您可以创建具有视图大小的 UIImageView,使用 content mode = UIViewContentModeScaleAspectFit 向其中添加图像,然后调用

      UIImageView *imageView = [[UIImageView alloc] initWithFrame:self.view.bounds];
      imageView.contentMode = UIViewContentModeScaleAspectFit;
      [imageView setImage:YOURIMAGE];
      `self.view.backgroundColor = [UIColor colorWithPatternImage:imageView.image];`
      

      【讨论】:

      • 我只使用 self.view.backgroundColor=[UIColor colorwithpattern://];
      • 查看我更新的问题,然后您更改为 UIViewContentModeScaleToFill
      猜你喜欢
      • 1970-01-01
      • 2012-12-16
      • 2023-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-09-24
      • 2017-10-30
      • 1970-01-01
      相关资源
      最近更新 更多