objective-c - 如何从单元格的内容 View 中删除 subview ?

标签 objective-c ios uitableview subview

我已经在单元格的内容 View 中添加了一个 UIWebview

UIWebView *webview = [UIWebView alloc]init];
[cell.contentView addSubview:webview];

现在我打算从单元格的内容 View 中删除“webview”。

我可以执行以下操作吗?

方法一:

[webview removeFromSuperview];

或者我真的需要在删除之前遍历内容 View 的所有 subview 吗?

方法二:

for (UIView *subview in [self.contentView subviews]) 
{
    if ([subview isKindOfClass:[UIWebView class]]) 
    {
        [subview removeFromSuperview];
    }
}

我尝试了方法 1 但它似乎没有用,我不确定我是否遗漏了什么或者方法 2 是否是唯一的方法

最佳答案

方法 1 应该可行,但您确定要删除的 WebView 与添加的 WebView 真的一样吗?从 View 中删除给定 subview 的一种简单方法是分配一个标签:

//...
webView.tag = 123;
[cell.contentView addSubview:webView];
//...
[[cell.contentView viewWithTag:123] removeFromSuperview];

在实践中,使用命名常量作为标记当然会更好。

关于objective-c - 如何从单元格的内容 View 中删除 subview ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7334791/

相关文章:

ios - 一个 TableView 中的多个按钮

ios - 使用 iOS 11 约束导航栏中的 UIBarButtonItem 大小

objective-c - 如何将 Core Data 数据放入数组数组中?与 Dave DeLong 的 CHCSVWriter 一起使用

ios - ARKit 应用程序在应用商店审核时启动时崩溃,而不是在设备上崩溃

ios - 从 UITableView 选定索引更新 detailDescriptionLabel 数据

ios - 创建自己的 UITableViewController

ios - 如何在 Xcode 而不是 iPhone 模拟器中存储 .db 文件?

ios - Swift:如何使用 Alamofilre 或 SwiftyJSON 将 JSON 字符串转换为 ObjectMapper?

android - 使用 Imagepicker 在 React Native Expo 中选择多个图像

ios - Swift - UITableViewCell 具有自定义类和原型(prototype),在第四个单元格后重复