ios - Iphone 删除 subview

标签 ios uitableview drop-down-menu addsubview

我有一个 UINavigationController。在右上角我有一个按钮,点击它我必须得到一个下拉表格 View 。我用 xib 创建了另一个 UIViewController 类,并将其作为 subview 添加到当前 View 。它应该在第一次点击时出现,在第二次点击时消失。所有点击(打开 View 和关闭 View )都应该发生这种情况。我写了这段代码,但不知道哪里出错了。有人请帮忙

-(void)modalTableView
{
tableView1 = [[TableViewController alloc] initWithNibName:@"TableViewController" bundle:nil];

for (UIView *subView in self.view.subviews)
{

    if ([subView isKindOfClass:[TableViewController class]]) 
    {

         [subView removeFromSuperview];
    }

    else 
    {
        [self.view addSubview:tableView1.view];

    }
  }

}

我在这里错过了什么?

编辑:TableViewController 是我的 UIViewController 类的名称

最佳答案

线索在这里

for (UIView *subView in self.view.subviews)

每个 subview 都属于 UIView 类和您的测试

isKindOfClass:[TableViewController class]

正在测试类 TableViewController

我建议这样做的一种方法是标记您动态添加的 View ,例如 99 - 然后在您的循环中您可以通过它们的标记来识别这些 View 。

例如。

for (UIView *subView in self.view.subviews)
{
    if (subView.tag == 99) 
    {
        [subView removeFromSuperview];
    }
}

关于ios - Iphone 删除 subview ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9820113/

相关文章:

ios - imo、whatsapp 和 skype 等 iPhone 锁定时如何实现应用程序调用?

IOS UITableView "Delete"按钮不出现

ios - Swift 3 : Segmented Control into TableView. 重新加载表时所选索引丢失

drop-down-menu - 从员工的操作下拉列表中删除 "Duplicate"

ios - 如何计算发送/接收的字节数,包括 iOS HTTP 连接中的 TCP/IP 开销?

ios - 操作不适用于 UISwitch

ios - TableView AccessoryType Checkmark 洗牌

css - 如果 ul 有 ul child ,是否有 CSS 方法添加箭头?

php - 如何使 Twitter Bootstrap 的 css 类适应 drupal 菜单?

ios - NativeScript 平面 ActionBar 重叠 ScrollView