2013-10-29 23 views
-1

摘要: 我有一個帶有可縮放內容的UIScrollView。如果內容不是放大並且我presentViewController,當我關閉ViewController時,一切正常。但是,如果我縮放了內容,然後呈現了ViewController,那麼當我關閉ViewController時,內容和UIScrollView都是古怪的。歡迎任何幫助,這是一個可怕的錯誤...謝謝!當使用presentViewController時有趣的UIScrollView

測試項目: 一個簡單的測試可以在這裏找到...

http://twostatesaway.com/ModalWithScrollViewTEST.zip

或這裏

https://drive.google.com/file/d/0B0pG5vRVzBTzdkVzdEtkdmVjdDA/edit?usp=sharing

屏幕截圖:

屏幕1:一切都很好。我可以顯示模式一百萬次,並且內容在解除模式後將按預期工作。

屏幕2:放大內容。屏幕3:當我點擊按鈕來呈現ViewController時,隨着ViewController(黑色)的出現,內容向右移動。

屏幕4:模態顯示在屏幕上。屏幕5:當我關閉ViewConroller時,內容很有趣,明亮的綠色視圖似乎恢復正常,但按鈕保持在其縮放位置,仍然向右移動。

屏幕6:另一個有趣的事情是,現在我可以縮小比以前更多。最小縮放設置爲1.0,但現在看起來不起作用。

enter image description here

+0

我認爲你的按鈕不在黃色視圖內。 – user1673099

+0

我想你沒有下載測試項目。 –

+0

Google雲端硬盤和所有其他分享網站在我的辦公室被封鎖。 – user1673099

回答

0

接受的工作在這裏是捕捉變焦和contentOffset當模式快到了,然後在視圖再次出現設置的屬性...

//// Capture values 
-(void)viewWillDisappear:(BOOL)animated 
{ 
    zoomedScale = self.scrollView.zoomScale; 
    contentOffsetTemp = self.scrollView.contentOffset; 
} 

//// This prevents the content from getting messed up (thanks user1673099) 
-(void)viewDidDisappear:(BOOL)animated 
{ 
    [self.scrollView setZoomScale:self.scrollView.minimumZoomScale]; 
} 

//// Then reassign them values 
-(void)viewWillAppear:(BOOL)animated 
{ 
    self.scrollView.zoomScale = zoomedScale; 
    self.scrollView.contentOffset = contentOffsetTemp; 
} 
0

試試這個方法...

1)- (IBAction)openModal:(id)sender &刪除代碼讓它空白。

2)在故事板中,將secondViewController類設置爲ModalViewController,如下所示。

enter image description here

3)作爲模態從按鈕行拖動到第二視圖&使用賽格瑞如下所示。

enter image description here

更新回答

1)清除viewDidLoad方法。

2)寫下面的代碼在ViewWillAppear method.

-(void)viewWillAppear:(BOOL)animated 
{ 
    [super viewWillAppear:animated]; 
    self.scrollView.delegate = self; 
    self.scrollView.minimumZoomScale = 1.0; 
    self.scrollView.maximumZoomScale = 5.0; 
    //self.scrollView.contentSize=CGSizeMake(320, 200); 
    [self.scrollView setZoomScale:self.scrollView.minimumZoomScale]; 
} 
+0

**請讓我現在,如果您有任何問題。** – user1673099

+0

這對你有用嗎? – user1673099

+0

感謝您的建議,但我得到了相同的結果。 –

相關問題