如何保存UICollectionViewCell的状态

时间:2012-11-17 14:14:04

标签: objective-c ios uiwebview uicollectionview uicollectionviewcell

请帮助我,如何保存UICollectionViewCell的状态。例如:我的单元格为UIWebView,当我dequeueReusableCellWithReuseIdentifier:forIndexPath:返回错误的单元格时,不会为此indexPath而在UIWebView之后,indexPath内容将重新加载以获得正确的- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath { NewsCollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"NEWS_CELL" forIndexPath:indexPath]; if (!cell.isShowed) { // I just added boolean property cell.isShowed = YES; /*** some init actions ***/ } return cell; } 有抽搐。谢谢!

cell.isShowed == YES

如果我使用此方法,则indexPath的单元格会返回错误的cell.isShowed。但是,如果我不使用{{1}},UIWebView的内容将在每个显示单元格中重新加载 对不起我的英文:)

1 个答案:

答案 0 :(得分:0)

看看Apple的UIWebView Class Reference说了什么:

  

重要提示:您不应该嵌入UIWebView或UITableView对象   UIScrollView对象。如果这样做,可能会导致意外行为   因为两个对象的触摸事件可能混淆错误   处理。

UICollectionView继承自UIScrollView。所以你需要重新设计你的架构。