我有一個應用程序有兩個viewcontroller Viewcontroller和OptionsViewController。 Viewcontroller是最初的viewcontroller然後如果我點擊一個按鈕,我有一個模式賽格到optionsviewcontroller。在optionsviewcontroller裏面我有我從故事板創建的UISegmented viewcontroller,它連接到一個插座(UnitsSegmentedControl),我希望能夠告訴分段控件在OptionsViewController加載時應該默認選擇哪個段。 在我的viewController我寫了一個方法:在UISegmentedControl中設置默認段
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
OptionsViewController *ovc=[segue destinationViewController];
ovc.delegate=self;
[ovc.UnitsSegmentedControl setSelectedSegmentIndex:1];
的事情是,當OptionsViewController加載視圖中選擇的指數是0作爲默認。我沒有收到任何錯誤消息或什麼。 我正在使用Xcode 4.2。我想這可能是一些選項,我可以改變故事板,使UISegmentedControl能夠設置默認選定的索引。我不知道還有什麼可能造成的。謝謝
編輯: 我想通了,如果我寫:
[ovc.UnitsSegmentedControl setSelectedSegmentIndex:1];
內OptionsViewController方法viewDidLoad中一切正常。爲什麼我無法從準備segue方法中做到這一點?
我找到了解決這個問題的方式指數的選定屬性通過在OptionsViewController中創建一個名爲index的屬性,並將其設置爲我希望直接從prepareforsegue方法中選擇的段編號,然後將它歸入視圖中的segmentviewcontrol進行加載。感謝您的幫助 – Mppl 2012-01-15 00:22:31