2
如果dequeueReusableCellWithIdentifier
一旦他們離開屏幕就重複使用單元格,這是否意味着單元格上設置的實例變量會因其新用法而被覆蓋?例如,如果我要在實例變量中緩存單元格的高度,如果稍後使用同一單元格顯示不同的數據項,那麼單元格的高度是否會被覆蓋?dequeueReusableCellWithIdentifier是否禁止單元格實例變量?
應該將這些數據存儲在表視圖中的數組中嗎?
如果dequeueReusableCellWithIdentifier
一旦他們離開屏幕就重複使用單元格,這是否意味着單元格上設置的實例變量會因其新用法而被覆蓋?例如,如果我要在實例變量中緩存單元格的高度,如果稍後使用同一單元格顯示不同的數據項,那麼單元格的高度是否會被覆蓋?dequeueReusableCellWithIdentifier是否禁止單元格實例變量?
應該將這些數據存儲在表視圖中的數組中嗎?
對於您確定的原因,您無法對數據或屬性進行任何假設(UITableViewCells
)。UIKit可能會或可能不會從內存中釋放單元實例(假設它將消失)。
就像@ hackmodford所評論的那樣,專門存儲有關某個單元格高度信息的更好方法是通過tableViews
UITableViewDataSource
中的數據結構來管理它。一個數組聽起來合適。
你是在談論一個UITableViewCell中保存的實例變量?如果是這樣的話,我會將單元格的高度存儲在數據源中。 – Hackmodford
是的,我是。 1234 –
好的,把單元想象成一個顯示您在其他地方獲得的信息的外殼。 – Hackmodford