2011-01-06 6 views
1

私はNumbersアプリに表示されるものと同様に、画面の上部にカスタムタブメニューを作成したいと考えています。 私は、画面を2つのビューに分けることができると考えました.1つはタブ用で、もう1つは選択したタブビュー用に大きくなっています。 これは可能ですか?アクティブビューが2つありますか?& View Controller?iPhone/iPadの1つの画面に複数のビューがありますか?

+0

おかげで、私はそれを認識していませんでした。どうやって私に教えてもらえますか? – mbpro

+0

全く見当たりません:) – mbpro

答えて

1

もちろん可能です。現在のルートビューコントローラのビューのサブビューとして、ビューコントローラからビューを追加できます。これを行う

(これはのUIViewControllerサブクラス内にあると仮定):

UIViewController *newViewController = [[UIViewController alloc] init]; 
[self.view addSubview:newViewController.view]; 

は完全に罰金です。

さらに、実際には複数のビューコントローラが必要で、追加のビューだけでなく、あなたの説明からわかるように、私はそれが追加のビューを持つただ1つのView Controllerで実装できると思います。

タブ付きメニューの実装に関しては、UITabBarControllerはニーズに合っていませんか? iOSアプリケーションのタブ付きインターフェイスでは、タブが最上部にあるデスクトップOSのタブバーではなく、この種のタブバーを使用するのが一般的です。

+0

もちろん、どのビューもサブビューとして追加できますが、そのようなビューは画面全体を表示します。 UITabBarControllerはそれを目的としていますが、実際にはタイル表示に適していません。実際、Numbersはこのアプローチも採用しており、Appleのアプリケーションです。彼らはどうしたのだろう... – mbpro

+0

それは画面全体を取る必要はありません。それはどこにあるのですか? – Altealice

+1

どこか読んでください。それは間違っていました。私はそれをテストし、それはもちろん動作します。論理的です。その他の派生UIKit標準クラスは、スクリーンよりも小さいフレームでどのように動作しますか? :) – mbpro

0

さまざまなソースから取得できるため、ビューコントローラはアプリケーションウィンドウを占有する1つのビューを制御するため、複数のビューでタブ付きメニューを実行することはできません。

folowing可能性があるかもしれません:ビューが選択されている場合、適切なタブはどちらか(タブメニューを再描画

  • 選択されたときに新しいビューを追加するアプリケーションレベルのシングルトン
  • のいくつかの王に現在のタブの位置を格納

    • 新しいビューやスタックから取得したもの)

    誰か良いアイデアはありますか?

  • 0

    これを試してみてください。これをpoitingため

    UIView *contentView1=[[UIView alloc]initWithFrame:CGRectMake(0, 0, 100, 100)]; 
    UIView *contentView2=[[UIView alloc]initWithFrame:CGRectMake(100, 100, 100, 100)]; 
    
    [self.view addSubView:contentView1]; 
    [self.view addSubView:contentView2]; 
    
    関連する問題