【问题标题】:self.view.subviews not showing buttonsself.view.subviews 不显示按钮
【发布时间】:2013-06-11 06:44:33
【问题描述】:

我想遍历视图中的所有子视图,并为每个 UIButton 做一些事情。 这是我正在使用的代码(在 viewDidLoad 的末尾):

for(UIView* v in self.view.subviews)
{
    if([v isKindOfClass:[UIButton class]])
    {
        NSLog(@"This is a button");
        //DO SOMETHING FOR EACH BUTTOn
    }
}

但问题是“这是一个按钮”这一行永远不会到达......

为什么会这样?

【问题讨论】:

  • 按钮是直接子视图还是包含在另一个子视图中?
  • 如何添加SubView
  • 刚刚想到 - 我将尝试添加 else if([v isKindOfClass:[UIView class]]) 并向下钻取。应该解决问题。我希望...
  • 有没有办法获取所有的UIButtons,不管它们在哪里?
  • 您是否在任何其他视图(如滚动视图)中添加按钮?

标签: objective-c view uiview uibutton


【解决方案1】:
for (UIButton *eachButton in self.view.subviews)
{     
     [eachButton methodWhichYouNeedToAssign];
}

希望这会有所帮助:-)

【讨论】:

    【解决方案2】:

    self.view.subviews 将只返回该视图的子视图。

    例如。 View A->View B->view C

    View A 的子视图将仅列出 View BView C 将仅作为 view B 的子视图提供

    所以尝试一些递归方法来深入了解所有子视图

    【讨论】:

      猜你喜欢
      • 2021-10-15
      • 2012-10-08
      • 2019-07-31
      • 2018-10-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多