我想爲iPhone5
用戶調整背景靜態UIImageView
(從Nib
文件)的大小。不幸的是,下面的代碼似乎對背景視圖的大小沒有任何影響。XCODE:調整從iPhone 5設備的NIB的UIImageView大小
有誰知道爲什麼?預先感謝您提供的任何幫助。
ViewController.m:
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
AppDelegate *appDelegate = [[UIApplication sharedApplication] delegate];
device = appDelegate.deviceType;
NSLog(@"The device platform is: %@", device);
if ([[device substringToIndex:8] caseInsensitiveCompare: @"iPhone 5"] == NSOrderedSame) {
[background sizeThatFits:CGSizeMake(320, 504)];
}
else {
[background sizeThatFits:CGSizeMake(320, 416)];
}
...
//Note: 'background' is declared in `ViewController.h` as, `IBOutlet` `UIImageView` *background, and is linked to the image view in ViewController_iPhone.xib
我會阻止你從代碼中的硬編碼尺寸像'416'和'504'。如果你以後嵌入導航控制器會怎麼樣?或者一個標籤控制器?或兩者?或隱藏狀態欄?或者蘋果發佈4.5「設備?等等。您不應該根據視圖控制器的使用情況來更改視圖控制器的代碼(除了可能像iPad v iPhone這樣的激進產品)。 – Rob
或者更好的是,設置'autosizing'掩碼,並且不要以編程方式更改框架。 – Rob