0

私はタブベースのiphoneアプリケーションを開発しました。これで、私は以下に説明するような問題に直面しています:

1番目のタブバーに関連付けられているビューには、2〜3個のボタンが含まれています。これらのボタンのアクションは、別のビューをロードすることです。これらのボタンを押すと、ビューが読み込まれますが、フルサイズ(320x480)で、タブバーが非表示になります。タブバーにアクセスできるように、タブバーのすぐ上にそのビューをロードしたいと思います。そのビューのviewDidLoad関数でビューフレームを明示的に設定しましたが、機能していません。

私を助けてください。

4

2 に答える 2

1


これを試して :

ビューベースのアプリケーションから始める必要があります。そして、 appDelegate ファイルにUITabbarControllerを作成します。

Appdelegate.h

UITabBarController *tabBarController;
// set properties

Appdelegate.m

// Synthsize

tabBarController = [[UITabBarController alloc] init];
tabBarController.delegate=self;

//Adding Search,Nearby,Map,AboutUs,Favorites Tabs to tabBarController  
Search * search = [[Search alloc] init];  
UINavigationController *searchNav = [[UINavigationController alloc] initWithRootViewController:search];  

Nearby* nearby = [[Nearby alloc] init];  
UINavigationController *nearbyNav = [[UINavigationController alloc] initWithRootViewController:nearby];  

Map* map = [[Map alloc] init];  
UINavigationController *mapNav = [[UINavigationController alloc] initWithRootViewController:map];  

AboutUs* aboutUs = [[AboutUs alloc] init];  
UINavigationController *aboutUsNav = [[UINavigationController alloc] initWithRootViewController:aboutUs];  

Favorites* favorites = [[Favorites alloc] init];  
UINavigationController *favoritesNav = [[UINavigationController alloc] initWithRootViewController:favorites];  

NSArray* controllers = [NSArray arrayWithObjects:searchNav,nearbyNav,mapNav,aboutUsNav,favoritesNav, nil];  
tabBarController.viewControllers = controllers;  

[window addSubview:tabBarController.view];    

それに応じて、どのタブにナビゲーション コントローラーを配置するか、ビュー コントローラーのみを配置するかを管理できます。

次に、上記の各View Controllerで実装する必要があります

- (id)init {}

タブ名と画像を設定できます。必要に応じて tbs の名前を変更します。ナビゲーションコントローラーであるビューの1つに2つのボタンを配置します。
お役に立てれば。

于 2011-05-23T14:30:11.007 に答える
1

典型的なアプリケーション ナビゲーションでは、ユーザーはタブなどの間を前後に自由に移動できます。これは、ナビゲーション バー スタックで ViewController をプッシュおよびポップすることで容易になります。

特定のシナリオでは、ユーザーに何らかのタスクを強制的に完了させたい場合があり、これはモーダル ビュー コントローラーを使用する必要がある場合です。アプリケーションがモーダル ビューを表示する場合、ユーザーはビューから移動することはできず、代わりにアクションを完了するかキャンセルすることしかできないため、モーダル ビューのデフォルトの動作はナビゲーションを非表示にすることです。バー、タブバーなど

あなたの説明から、モーダルタスクではなくナビゲーションを実行しているように聞こえるので、presentModalViewControllerの代わりにpushViewControllerを使用することをお勧めできますか?

下から上へのアニメーションが必要なために presentModalViewController のみを使用している場合は、カスタム アニメーションを使用する必要があります。

于 2011-05-24T12:46:49.480 に答える