self.view.subviews 不显示按钮
Posted
技术标签:
【中文标题】self.view.subviews 不显示按钮【英文标题】:self.view.subviews not showing buttons 【发布时间】: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,不管它们在哪里?
您是否在任何其他视图(如滚动视图)中添加按钮?
【参考方案1】:
for (UIButton *eachButton in self.view.subviews)
[eachButton methodWhichYouNeedToAssign];
希望这会有所帮助:-)
【讨论】:
【参考方案2】:self.view.subviews 将只返回该视图的子视图。
例如。 View A
->View B
->view C
View A
的子视图将仅列出 View B
,View C
将仅作为 view B
的子视图提供
所以尝试一些递归方法来深入了解所有子视图
【讨论】:
以上是关于self.view.subviews 不显示按钮的主要内容,如果未能解决你的问题,请参考以下文章
iOS:从视图中查找 uiviewcontroller 的类名