若是整個專案要以Navigation來串聯各個UIView,我們就可以在最初始的UIWindow以UINavigationController動態的加入其他UIView。
h檔
#import
#import "MainViewController.h"
@interface AppDelegate : UIResponder {
UINavigationController *navigator;
}
@property (strong, nonatomic) UIWindow *window;
@property (nonatomic,retain) UINavigationController *navigator;
@end
m檔
-(void) initApp
{
//建立一個navigator
self.navigator = [[UINavigationController alloc] init];
self.navigator.navigationBar.barStyle = UIBarStyleDefault;
//加背景圖
//[self.navigator.navigationBar setBackgroundImage:[UIImage imageNamed:@"bg_image"] forBarMetrics:UIBarMetricsDefault];
//改變按鈕顏色
//[self.navigator.navigationBar setTintColor:[UIColor orangeColor]];
//建立mainView
MainViewController *mainView = [[MainViewController alloc] init];
//加標題
mainView.title = @"主選單";
//將mainView放入navigator中
[self.navigator pushViewController:mainView animated:NO];
//將navigator放入window中
[self.window addSubview:self.navigator.view];
}
說明:
1. 可以在navigationBar.barStyle來設定要顯示的形式
2. 若是想用自己的圖片當作Bar的底圖,可以利用setBackgroundImage
3. UINavigationController只是外部的框架,要放入顯示的View可以利用pushViewController。
4. 最後將設定完成的UINavigationController.view以addSubview放入window
爾後要利用按鈕或是點選TableView以後轉到下一頁,都可以利用self.navigationController pushViewController的語法放入
sv_DMain .title = @"功能一";
[self.navigationController pushViewController:sv_DMain animated:YES];
當你使用這句語法,iOS SDK則會去判斷,目前使用的View是否有UINavigationController,若有則會自動加上應該有的內容。
而最基本的內容就是:Title與返回鍵。
可以得到很不錯的效果:
轉頁後:
沒有留言:
張貼留言