我環顧了這個主題的許多帖子,但一直無法解決我遇到的問題。我呈現的是一個UIViewController的模態視圖。我已經設置了該視圖在右上角有一個UISegmentedControl,它將理想地允許我切換視圖(在此模式視圖內)。如何讓UISegmentedControl交換視圖,並仍然具有旋轉方向的能力?
爲了不掩蓋我頂部的工具欄,我在IB中製作了一個簡單的UIView,並且佈置了尺寸,以便它們不會與工具欄重疊。現在,我的想法是,如果我加我想選擇UISegmentedControl時要添加到UIView的觀點,人生將是巨大的:
-(IBAction) indexDidChangeForSegmentedControl:(UISegmentedControl*)seg{
int selectedNum = seg.selectedSegmentIndex;
if([[self.view1 subviews] objectAtIndex:0] != nil){
[[[self.view1 subviews] objectAtIndex:0] removeFromSuperview];
}
if(selectedNum == 0){
[self.view1 addSubview:[(DialogInfo*)[viewsArray objectAtIndex:seg.selectedSegmentIndex] view]];
}else if(selectedNum == 1){
[self.view1 addSubview:[(DialogMetadata*)[viewsArray objectAtIndex:seg.selectedSegmentIndex] view]];
}else if(selectedNum == 2){
[self.view1 addSubview:[(DialogVersions*)[viewsArray objectAtIndex:seg.selectedSegmentIndex] view]];
}else if(selectedNum == 3){
[self.view1 addSubview:[(DialogAssoc*)[viewsArray objectAtIndex:seg.selectedSegmentIndex] view]];
}
}
這作品!但問題是,當我旋轉設備時,我真正關心的視圖,內部視圖不會旋轉。
我試過沒有做這個外部父母的UIView方法,只是嘗試設置視圖控制器視圖與特定的框架,但方向仍然搞砸了。
我也試過用UINavigationController來做這件事,只是沒有爲過渡動畫,但我無法讓它正常工作。
所以我的問題是:我該怎麼辦?我想要的只是能夠在UISegmentedControl之間切換視圖,並能夠將設備旋轉到任何需要的方向。我已經想通了這麼多,並嘗試了很多不同的東西,我覺得我不知道現在發生了什麼。
謝謝您的幫助