0

我有一个名为 Splashes 的简单类,它在启动时为三个图像设置动画。
它运行良好,但现在在 iPhone 5 上我无法自动调整视图大小。

这里的代码片段:

- (void)viewDidLoad
  [...]
  if ( IS_IPHONE_5 ) _ImageSplash.image = [UIImage imageNamed:@"splash_1-568h@2x.png"];
  else _ImageSplash.image = [UIImage imageNamed:@"splash_1.png"];
  if ( IS_IPAD ) _ImageSplash.image = [UIImage imageNamed:@"splash_1_ipad.png"];

  [NSTimer scheduledTimerWithTimeInterval:1.5 target:self selector:@selector(repeat) userInfo:nil repeats:YES];
  [...]
}

重复功能

[...]
int i=0;
[...]
- (void)repeat
{
  switch (i) {
    case 0:
      if ( IS_IPHONE_5 ) _ImageSplash.image = [UIImage imageNamed:@"splash_2-568h@2x.png"];
      else _ImageSplash.image = [UIImage imageNamed:@"splash_2.png"];
      if ( IS_IPAD ) _ImageSplash.image = [UIImage imageNamed:@"splash_2_ipad.png"];
      break;
    case 1:
      if ( IS_IPHONE_5 ) _ImageSplash.image = [UIImage imageNamed:@"splash_3-568h@2x.png"];
      else _ImageSplash.image = [UIImage imageNamed:@"splash_3.png"];
      if ( IS_IPAD ) _ImageSplash.image = [UIImage imageNamed:@"splash_3_ipad.png"];
      break;
    default: [self dismissModalViewControllerAnimated:NO]; break;
  }
  i++;
}

图像已根据设备正确加载,但 xib 保持不变。
不想自动调整大小。

这些是我的 XIB 的设置:
在此处输入图像描述 在此处输入图像描述

在此处输入图像描述

可能是什么问题?

所有其他 XIB 都运行良好,我只有这个问题。
iOS 仅在视图底部显示一条黑色条纹!很奇怪...

注意:我不能使用 AUTOLAYOUTS,因为它是 3.2+ 应用程序兼容。


编辑:添加截图。
在此处输入图像描述

谢谢。

4

2 回答 2

0

除了当前设置(即固定到左侧、顶部、底部并允许灵活的高度)之外,将图像视图上的自动调整大小遮罩更改为固定到顶部和底部。

于 2012-10-19T13:40:12.570 回答
0

我认为 CSmith 的回复应该有效,但是,无论如何,这可能会奏效:

CGRect windowFrame=[[[UIApplication sharedApplication].windows objectAtIndex:0] bounds];
[_ImageSplash setFrame:windowFrame];

将它放在 iPhone5 检查下,即设备是 iPhone5 时。

于 2012-10-19T13:48:01.093 回答