2011-11-20 50 views
11

我使用這個問題的例子:How to combine UIScrollview with UIPagecontrol to show different views?添加UIScrollView包含多個子視圖到我的iPad應用程序的頁面。如何在使用iOS5故事板時爲UIScrollView設計子視圖?

我的應用程序在頂部有一個大視圖,然後在底部有一個小框。底部的框是UIScrollView;用戶將左右滑動以在該小部分中調出各種功能的框。頂端的大觀點從不改變,所以我認爲賽格是不合適的。

我的故事板上有一個View Controller Scene。雖然我可以添加視圖,但我無法設計'屏幕外'視圖;換句話說,我無法畫出每個子視圖。我怎樣才能做到這一點?我是否需要爲每個子視圖製作單獨的XIB?如果是這樣,我該如何加載它們?或者,我應該讓我的滾動視圖(subview width * subview count)寬,並繪製每個視圖毗鄰前一個?這是我的第一個iOS應用程序,所以我可能會倒退一些東西。

感謝

回答

2

我終於發現,我可以創建單獨的發鈔銀行子視圖。在子視圖NIB中,我將File的所有者身份設置爲我的主視圖控制器的類,併爲子視圖的視圖控制器添加了一個插座。然後,我將NIB中的子視圖鏈接到文件所有者的出口。

最後在主視圖控制器的viewDidLoad我把這種對每個子視圖NIB:

[[NSBundle mainBundle] loadNibNamed:@"MySubView" owner:self options:nil]; 
4

我還發現,但最終你失去了故事板的目的是用的全流程爲您呈現你的圖形應用。

我真的覺得缺少這裏是一個新的可可對象即UIPagedScrollController,當加入到故事板將有它類似於UIToolBarController和的UINavigationController自己賽格瑞過渡,但將包括兩個UIPageControl和的UIScrollView的需要做出的魔力。

6

目前故事板不是理想的做法,但不應該使用單獨的筆尖文件。相反,您應該使用其他viewControllers並根據需要設置其每個視圖。您必須記得在界面構建器中設置視圖控制器的標識符,然後您可以像這樣加載視圖,

UIStoryboard * storyboard = [UIStoryboard storyboardWithName:@「MainStoryboard」bundle:nil]; UIViewController * myViewController = [storyboard instantiateViewControllerWithIdentifier:@「MyViewControllerIdentifierInIB」];

現在您擁有視圖控制器,您可以訪問視圖並將其添加到任何位置。

注意:要更改視圖的大小,您必須選擇視圖控制器並將其在界面構建器中的屬性檢查器中的大小更改爲自由形式。然後你將能夠改變視圖的大小。

+0

我沒有看到這個斯科特,謝謝。我寧願嘗試這樣的事情比使用單獨的筆尖。我會放棄它。 –

+5

「不理想」是輕描淡寫:AFAICS Storyboards主動阻止使用帶有內容的UIScrollView - IB的所有「舊」功能都被Apple刪除或強制禁用。手指交叉蘋果公司很快解決了這個混亂 – Adam

相關問題