iOS學習之UINavigationController

來源:互聯網
上載者:User

標籤:

下述屬性全為iOS7以後

設定導航條風格

self.navigationController.navigationBar.barStyle = UIBarStyleBlackTranslucent;

設定導航條背景顏色

self.navigationController.navigationBar.backgroundColor = [UIColor redColor];

 設定導航條背景顏色時,導航條風格不能是UIBarStyleDefault。

設定導航條背景圖片

[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"navBg"] forBarMetrics:UIBarMetricsDefault];

UIBarMetricsDefault 為iPhone的模式(豎屏叫做人像模式、橫屏叫做風景模式),設定背景圖片後,背景顏色會被遮擋。圖片尺寸高度需為44。如果過窄會被平鋪填充,過大會超出。但是可以設定導航條的另一個屬性來進行裁剪。如果想導航條填充到狀態列,高度設為64,clipsToBounds需為NO。

self.navigationController.navigationBar.clipsToBounds = YES;

設定導航條隱藏

self.navigationController.navigationBarHidden = YES;

 iOS7以後,視圖控制器的view的起始點是從螢幕最頂端開始,包括狀態列。因此布局時需要留出20像素。 

UINavigationItem詳解

常用屬性和方法:

@property(nonatomic, copy) NSString *title;    //設定標題,顯示在導覽列中間@property(nonatomic, retain) UIView *titleView;    //設定標題視圖,顯示在導覽列中間位置@property(nonatomic, retain) UIBarButtonItem *leftBarButtonItem;    //左側按鈕@property(nonatomic, retain) UIBarButtonItem *rightBarButtonItem;    //右側按鈕-(void)setLeftBarButtonItem:(UIBarButtonItem*)item animated:(BOOL)animated;-(void)setRightBarButtonItem:(UIBarButtonItem*)item animated:(BOOL)animated;-(void)setLeftBarButtonItems:(NSArray *)items animated:(BOOL)animated;    //設定左側的一組按鈕-(void)setRightBarButtonItems:(NSArray *)items animated:(BOOL)animated;    //設定右側的一組按鈕

UIBarButtonItem的初始化方法

-(id)initWithImage:(UIImage*)image style:(UIBarButtonItemStyle)style target:(id)target action:(SEL)action;-(id)initWithTitle:(NSString*)title style:(UIBarButtonItemStyle)style target:(id)target action:(SEL)action;-(id)initWithBarButtonSystemItem:(UIBarButtonSystemItem*)systemItem  target:(id)target action:(SEL)action;-(id)initWithCustomView:(UIView *)customView;

UIBarButtonItemStyle為UIBarButtonItemStylePlain風格時,按鈕顏色隨導航條的顏色變化,為UIBarButtonItemStyleDone風格時,按鈕顏色始終為藍色。 

 

iOS學習之UINavigationController

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.