1

Xib インターフェイスを使用して UIViewController サブクラスを作成しました。ビューの幅を強制的に 257px にしたいです。FREEFORM の IB でサイズを変更し、幅 257px にリサイズします。

このログをviewcontrollerclassに入れました

- (void)viewDidLoad
{
    [super viewDidLoad];
    NSLog(@"width: %f",self.view.frame.size.width);
}

- (void)viewDidLayoutSubviews{
    [super viewDidLayoutSubviews];
    NSLog(@"width_changed: %f",self.view.frame.size.width);
}

ログは

2013-10-09 14:14:18.966 TestApp[2008:a0b] width: 258.000000
2013-10-09 14:14:18.968 TestApp[2008:a0b] width_changed: 320.000000

なぜ幅が変わるのですか?どうすれば修正できますか?AutoResizingMask は無効になっています。

ありがとうございました!

4

1 に答える 1

0

Force the frame of your view inside viewDidLoad with your width :

- (void)viewDidLoad
{
    [super viewDidLoad];

    self.view.frame = CGRectMake(0, 0, 257, CGRectGetHeight(self.view.frame));
}
于 2013-10-09T12:46:09.650 に答える