撤消removeFromSuperview?

时间:2009-12-01 11:30:14

标签: iphone

[((UIImageView *)cell.backgroundView)removeFromSuperview];

它会从cell.backgroundView中删除UITableviewCell,但我怎样才能将其重新播放..? (再次添加该视图?)

2 个答案:

答案 0 :(得分:2)

[cell addSubview:myBackgroundView]

myBackgroundView是UIImageView的地方。如果将myBackgroundView保留为实例变量,则只需再次添加即可。如果不这样做,则需要重新初始化backgroundView;

UIImageView *myBackgroundView = [[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"your image"]] autorelease];

类似的东西。

答案 1 :(得分:1)

您需要保留对超级视图的引用,并使用addSubview

UIView *imageView = (UIView *)cell.backgroundView;
UIView *imageSuperview = imageView.superView; // I assume it's cell, but just in case

// Remove imageView
[imageView removeFromSuperview];

// Add it again
[imageSuperview addSubview:imageView];

如果您将imageView存储在字段等中,请确保正确保留引用。