我目前正在使用UITextView調試我們的應用程序中的一個問題,將其最後幾行切斷。 UITextView
位於collectionView單元格的內部,該單元格允許自己摺疊。我試圖在其框架更改時捕獲文本隱藏的執行,所以我在-[UITextView setFrame:]
上設置了一個符號斷點,並且在設置collectionView期間,這會暫停很多次,如預期的那樣。如何在不調用setFrame的情況下改變其框架
然而,當我打的最小化按鈕,TextView的的框架以某種方式改變它的起源和高度,但我從來沒有得到一個呼叫setFrame:
(或至少我的斷點從來沒有被擊中。)我也從來沒有得到一個電話setFrame:
當我展開它時,當原點和高度再次發生變化時。
我調用的直接操作textView的唯一代碼是隱藏和取消隱藏它。隱藏後,我再撥打以下:
- (void)updateCollection {
[self.collection performBatchUpdates:nil completion:nil];
[self.amountCell updateTable];
[self.collection setNeedsLayout];
[self.collection layoutIfNeeded];
}
的amountCell
無關我處理的細胞,所以我不認爲這有什麼與此有關。不知何故,在隱藏UITextView
然後在collectionView上調用一些更新方法之間,框架更改時未實際調用setFrame:
。這怎麼可能?該框架如何被操縱?我在這裏錯過了很明顯的東西嗎你可能看
是否調用'setBounds:'或'setCenter:'? – dan
完美!根本沒有想到'setBounds:'。出於某種原因,我認爲最終會調用'setFrame:'。現在,如果我可以找出爲什麼這樣設置我的界限如此怪異....順便說一句,如果您添加您的評論作爲答案,我會接受它,當我被允許。 –