2011-01-27 11 views
2

私には少なくとも私には奇妙なことが起きています 私はビューコントローラ(fileManagerViewController)を持っていますが、これは基本的に空のビューです 。私はIBでこのUIを作った。ツールバーにはいくつかのボタンがあり、そのうちの2つのボタンは2つのビューを切り替えるために使用されます。私が切り替えた2つのビューのUIは、コードによって作成されました。 FileManagerViewControllerののviewDidLoad内iOS - UIViewは横長でサイズ変更されません

  • 私はこの

-(void) viewDidLoad { 
    [super viewDidLoad]; 
    fileManagerTableView = [[FileManagerTableView alloc] init]; 
    fileManagerGridView = [[FileManagerGridView alloc] init]; 
    self.view.autoresizingMask = UIViewAutoresizingFlexibleHeight 
           |UIViewAutoresizingFlexibleWidth; 
    self.view.autoresizesSubviews=YES; 
    self.view addSubview:fileManagerTableView.view]; 
    [self.view addSubview:fileManagerGridView.view]; 
    [fileManagerTableView.view setHidden:YES]; 
} 
  • ものは結果が私SAIとして、2つのloadViewメソッドメソッド

    -(void) loadView { 
     CGRect fileGridViewFrame = CGRectMake(0.0, 50.0, 1024,768); 
fileGridView = [[[AQGridView alloc] 
           initWithFrame:fileGridViewFrame] 
           autorelease]; 

fileGridView.dataSource=self; 
fileGridView.delegate=self; 
fileGridView.autoresizingMask=UIViewAutoresizingFlexibleWidth| 
             UIViewAutoresizingFlexibleHeight 
fileGridView.autoresizesSubviews=YES; 
fileGridView.bounces; 
fileGridView.backgroundColor = [[UIColor colorWithPatternImage: 
             [UIImage imageNamed:@"bg.png"]]]; 
[self.fileGridView reloadData]; 
self.view = fileGridView; 
} 

    -(void) loadView { 
     CGRect fileTableViewFrame = CGRectMake(0.0, 44.0, 1024,768); 
fileGridView = [[[UITableView alloc] 
           initWithFrame:fileTableViewFrame] 
           autorelease]; 

fileGridView.dataSource=self; 
fileGridView.delegate=self; 
fileGridView.autoresizingMask=UIViewAutoresizingFlexibleWidth| 
             UIViewAutoresizingFlexibleHeight 
fileGridView.autoresizesSubviews=YES; 
fileGridView.bounces; 
fileGridView.backgroundColor = [[UIColor colorWithPatternImage: 
             [UIImage imageNamed:@"bg.png"]]]; 
[self.fileGridView reloadData]; 
self.view = fileGridView; 
} 

ある書きました私が期待するように、アプリがポートレートモードで起動すると、ポートレートモードとランドスケープモードでうまく表示されます。デバイスを横向きにしてアプリを起動した場合、画面全体が画面に表示されません。これを見てください screenshot

答えて

0

IBの中には、レイアウトコントロールで、サイズ変更コントロールがあります。上記のコントロールにアクセスするには、インスペクタの3番目のタブ(Cmd + 3)を開きます。

また、viewWillAppearメソッド内では、ビューでsetNeedsDisplayを呼び出します。

+0

遊びにはどういう意味ですか?私が持っている唯一のnibファイルは、ツールバーのある空の単純なビューを持っています。コントローラーはコードで追加するサブビューのコンテナとして機能します。 –

+0

異なる設定を試してください。私は今、iPhoneにいる。私は後でコンピュータにいるときにもっと情報を得ようとします。 IBと協力している – Moshe

+0

は結果をもたらさなかった。サブビューのサイズが正しく変更されません。私はloadViewメソッドでビューの高さを増やそうとしましたが、ギャップは消えました。しかし、これは私には意味をなさない。 –

関連する問題