2013-08-03 60 views
1

我有一個奇怪的問題,有時會出現在隨機字段上。uiview容器 - viewwithtag有時返回null

如何我有事情成立

的UIView - 隨着網絡成癮的旗幟,並且具有在其內嵌表視圖一個UIView容器。

enter image description here

我試圖訪問表視圖內的字段。我做了一些研究,發現使用視圖,標籤上還有一段路要走,所以放棄在表中的所有uitextfields查看標籤,然後嘗試使用

UITextField *cReg = (UITextField *)[[self containerView] viewWithTag:1]; 

有時正確地得到的UITextField訪問它們,其他時候它返回null,我不知道爲什麼

+0

請準確量化當您看到過程失敗以及何時看到成功。 – abiessu

+0

它是完全隨機的,沒有具體的方法來使它成功或失敗。代碼在按下按鈕時運行 –

+0

這不是訪問單元格內容的最佳方式。當用戶點擊保存按鈕時,您是否需要訪問單元格內容?如果是這樣,爲什麼不使用'cellForRowAtIndexPath'呢? – Rog

回答

2

什麼可能發生,這是因爲你的UITextFields都在UITableViewCells裏面,而UITableViewCell只在屏幕上顯示時纔在內存中分配。所以,隱藏的單元格不在內存中,它們的文本字段只是零。

就像Rog在評論中所說,這不是用tableView訪問filds的最好方法。

+0

我可以理解,如果它們全都返回null,但有些確實在別人沒有的時候返回正確的文本,兩者都在相同的保存操作上。那麼考慮我當前的設置,或者以其他方式實現相同的事情,最好的方法是什麼 –

+0

做測試。其中一些應該返回正確的值,即顯示在屏幕上的值。那些是零的,應該是隱藏在tableView的滾動中的那些。 那麼,如果有人顯示,仍然爲零,那麼問題是真的在別的地方 –

+0

是的,這似乎是問題,如果他們都在屏幕上,他們都很好,而第一個失蹤,如果它已經滾動 –

相關問題