UIImageView - 伸展以适应问题

时间:2014-03-31 13:53:45

标签: ios objective-c

我有一个需要动态背景图片的应用程序(它们设置在服务器端) - 使用的视图都是UIViewControllersUITableViewControllers,所以我创建了扩展控制器类型并添加一个的类加载时每个视图的背景图像。

除背景图片外,所有工作正常仅仅是UIViewController上的iPad上拒绝延伸 - 我正在使用Xcassets并且已应用标准和@ 2x视网膜图像 - 一切正常iPhone - 以及UITableViewControllersUIViewController类似乎都没有在iPad上拉伸背景 - 它只是在标准320宽度尺寸的左上角显示图像。

这是我的代码 - 任何人都可以建议我哪里出错了吗?

UIImageView *backgroundImage = [[UIImageView alloc] initWithImage:[UIImage imageNamed:    [self.prefs stringForKey:@"BGImageBlur"]]];
    backgroundImage.contentMode = UIViewContentModeScaleToFill;

    [self.view addSubview:backgroundImage];
    [self.view sendSubviewToBack:backgroundImage];

1 个答案:

答案 0 :(得分:2)

您正在创建UIImageView并为其提供要在视图中设置的图像。这将使用给定图像的帧创建UIImageView。您必须先指定框架,然后设置图像。试试这个:

UIImageView *backgroundImage = [[UIImageView alloc] initWithFrame:self.view.bounds];
backgroundImage.image = [UIImage imageNamed:[self.prefs stringForKey:@"BGImageBlur"]]

这将创建一个与其父级相同的ImageView。如果这不是您想要的,您可能需要指定一些其他布局约束。