如何从 X 个按钮中删除子视图
Posted
技术标签:
【中文标题】如何从 X 个按钮中删除子视图【英文标题】:How to remove the subviews from a X number of buttons 【发布时间】:2011-12-09 11:25:15 【问题描述】:我有一个看法。里面有风景。在这个视图中,我放置了可变数量的按钮。每个按钮都有一些图像(UIImageViews 作为子视图)。我想遍历 X 数量的按钮并检查按钮是否有超过 6 个子视图。后记我想删除一些子视图。
我只为一个按钮成功实现了此功能,但我希望将它用于 X 数量的按钮。 (假设是 56)
这是一个代码片段:
if([button.subviews count] >= 6)
for ( int i = 1; i < 4; i++ )
[[button.subviews objectAtIndex:i] removeFromSuperview];
我在想我正在寻找这样的功能:
for(UIView *subview in [drawView subviews])
if([subview is kindOfClass:[UIButton class]])
//deleting subviews of the buttons here
编辑
通过使用修复它:
for(UIView *subview in [drawView subviews])
if([subview is kindOfClass:[UIButton class]])
if([subview.subviews count] =>6)
for(int i = 1; i <4; i++)
[[subview.subviews objectAtIndex:i] removeFromSuperview];
【问题讨论】:
【参考方案1】:考虑使用标签栏控制器在尽可能多的标签上调用相同的事件!
【讨论】:
我更想通过放置一个计数 int(在 for 语句中)调用每个按钮来循环所有按钮。比如 for(int = 0; i =6) 等有什么线索吗? 我会说对按钮使用标签属性!而不是保留 57 个按钮名称,而是使用标签来调用它们。以上是关于如何从 X 个按钮中删除子视图的主要内容,如果未能解决你的问题,请参考以下文章