1. 屏幕
2. 建立單一視圖項目,底下選中iPad(也能夠在項目裏面改)
3. 建立左右控制器
分割視圖:
// 左邊是分組的tableView
放倒屏幕 command + 方向
代碼:
1. 建立split
2. 左右,左右
通常會用導航控制器來控制.
// 3. 設置根視圖控制器
self.window.rootViewController = split;
橫狀態屏才能夠看到,左右的分割視圖效果.
4. 下面把導航控制器,套在導航控制器裏.
// 今天的效果,左側是書籤,右側是瀏覽器.
左右控制器是平行了,不是正向傳值和反向傳值.
a 和 b 同時存在, 左邊點擊,右邊顯示.
5. 弄一個字典NSDictionary *bookMarks;
// 注意別忘了前綴,不然加載不出來的!
6. 有多少個鍵值對,就有多少行.
7. cell的內容須要經過key值取.
8. 實例化webView
右邊webView , 是scrollView .
9. 默認給它一個url
loadRequest方法, 須要一個NSURLRequest對象, 則就須要一個url
10. 通知中心
必定只能從userInfo裏面取信息, 不要從Object是發送對象,表示只接受它發來的,其餘人的都不接受.
11. 記得析構函數,移除通知.
// 刪除全部 removeObserver:self
// 或移除指定的 name: @「newURL」 object: nil
1.
默認狀況下,豎屏不顯示左邊控制器.
下面處理豎屏的時候,也顯示左邊的tableView.
split的代理:
// 注: UISplitViewController的實例化和代理方法,都在AppDelegate中寫.
// 控制豎屏的時候,是否顯示左邊的控制器.
效果以下:
2. 倒屏的效果,有點醜:
// 如今要作的是,autoResizing,讓其上下左右貼近父視圖.
// 兄弟視圖是autoLayout
// 下圖是倒過來的樣子(即Home鍵在最頂上)
代碼:
webView.autoresizingMask = UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight;
注意:
||(短路或)和 |(或)都是表示「或」,區別是||只要知足第一個條件,後面的條件就再也不判斷,而|要對全部的條件進行判斷。// | 和 || 區別
修改後:
3. 如今想要的效果,拉伸後也要看到左邊的標籤.
-(void)splitViewController:(UISplitViewController *)svc willHideViewController:(UIViewController *)aViewController withBarButtonItem:(UIBarButtonItem *)barButtonItem forPopoverController:(UIPopoverController *)pc{
barButtonItem.title = @"顯示";
right.navigationItem.leftBarButtonItem = barButtonItem;
}
效果: 1) // 「顯示」按鈕 , 點擊會顯示左側按鈕
2) 彈出菜單 // 記住設代理
// 點擊」顯示」彈出來,點擊其餘任何地方,收起.
系統已經幫咱們把這些功能都實現好了.