2011-07-22 48 views
5

我有一個視圖,其中一些UITextView添加到UIScrollView。當視圖出現時,所有數據都正確加載到scrollView,但我也有一個tableView,您可以在其中爲一個項目選擇不同的稅收。一旦你在該tableView上選擇了一個項目,scrollView就會被清除並重新裝入新項目。它使用正確的數據填充scrollView,但一旦填充後,它隨機滾動到滾動視圖的任何位置,而不是滾動,頂部沒有動畫。 我檢查了我的代碼和安裝了滾動後,我用:UIScrollView在添加內容時隨機滾動

[self.scrollPreciosTarifasGUI scrollRectToVisible:CGRectZero animated:NO]; 

我也試着使用:

[self.scrollPreciosTarifasGUI scrollRectToVisible:CGRectMake(0,0,1,1) animated:NO]; 

但我可同樣的結果。

我該如何解決這個問題?

回答

2

我有非常類似的問題隨機滾動和UITextViews。我真的沒有找到任何解決方案,但只是偶然我把一個滾動視圖到另一個,它的工作!

That's我的代碼:

//newDetailViewController.view is uiscrollview type 
[self.mainScrollView addSubview:newDetailViewController.view]; 
[newDetailViewController.view setFrame:CGRectMake(-2, 40, 800, 3300)]; 
+0

所以你的意思是通過將我的scrollView放入另一個scrollView來解決它? – Alex

+0

它爲我工作。不過,我不明白爲什麼。 –

+0

這解決了我的問題。我將所有數據添加到由代碼創建的新滾動視圖中,一旦它被填充,我將它添加到「主」scrollView。謝謝! – Alex

0

試試這個它只是胡亂猜測

[self.scrollPreciosTarifasGUI scrollRectToVisible:CGRectMake(0, 
                  0, 
                  self.scrollPreciosTarifasGUI.frame.size.width, 
                  self.scrollPreciosTarifasGUI.frame.size.height) 
           animated:NO]; 
+0

對不起,但它仍然無法正常工作。我有同樣的問題,但謝謝回答! – Alex

1

張貼在http://opensourcehacker.com/2010/08/30/uiscrollview-setcontentoffset-random-scrolling-on-ios-4/解決方案精彩爲我工作。

//需要這樣做在iOS 4或視圖滾動到任意位置 [滾動視圖setContentSize:CGSizeMake(0,0)];新內容 [自我updateContent:...]

//更新視圖

//我們希望它顯示每次以在最前面 [滾動視圖setContentOffset:CGPointMake(0,0)動畫:NO];

//並設置正確的大小以啓用滾動。 // contentHeight在設置子視圖的內容時更新。 [scrollView setContentSize:CGSizeMake(self.view.frame.size.width,contentheight)];

+0

在層次結構中添加額外的UIScrollView對我不起作用,但在更改UITextView然後設置內容大小之前設置零內容大小對我來說很合適。 – Bram