2013-07-12 36 views
1

UIScrollView僅適用於嵌入導航控件的視圖控制器嗎?我問的原因是因爲我有一個UIViewController,它有一個UISCrollView來顯示超出視圖的所有內容。這個ViewController是從TableViewController的push segue中顯示出來的,該TableViewController嵌入到導航控制器中。UIScrollView只能在嵌入導航控件的視圖控制器上工作嗎?

一切工作正常,直到我試圖改變push segue到一個模態seque代替,從而刪除了視圖從嵌入到導航控制器。

所有的內容加載得很好,但不會滾動。我添加了一個插座並嘗試以編程方式設置contentSize和scrollEnabled屬性,但仍然沒有任何結果。它不會再滾動,我無法弄清楚。我一直在網上搜索,但我找不到答案。

出口:

@property (weak, nonatomic) IBOutlet UIScrollView *scrollView; 

實現:

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    self.scrollView.contentSize = CGSizeMake(320, 900); 
    self.scrollView.scrollEnabled = YES; 
} 
+1

嘗試設置回推SEGUE暫時以確保沒有其他壞了,並確認這是唯一的變化。 –

+0

你知道它在push segue中沒有工作。我以爲是,但顯然它只是在滾動由導航欄帶走的額外空間。 – DJSK

回答

1

我不得不把UIScrollView放到另一個空的UIView中才能使它工作。

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
} 

-(void)viewDidAppear:(BOOL)animated 
{ 
    self.scrollView.contentSize = CGSizeMake(320, 900); 
    self.scrollView.scrollEnabled = YES; 
} 

enter image description here

+0

'另一個空的UIView爲了得到它的工作' 這是我的關鍵,謝謝 – thefoyer

1

有許多指示與設置滾動視圖的contentSize在viewDidLoad中問題的帖子。嘗試將其移動到viewDidAppear。

+0

它推後繼續工作,但它仍然不工作後模態賽格。我想我現在只是使用push segue。 – DJSK

相關問題