我有一个2层的应用程序(目前); bottomlayer有一个tableView,我希望顶层显示基于tableView选择的不同按钮/标签/等。本能隐藏/显示基于didSelectRowAtIndexPath的图层,但这需要根据选择隐藏/显示很多图层。我还想象故事板会变得非常混乱:(
是否有更合理/有效的方法根据tableview选择更改顶层玩家的UIView?
答案 0 :(得分:0)
在这样的for-in循环中循环遍历它们:
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
if (indexPath.row == 0) {
for (UIView *view in self.view.subviews) //change this to your container {
if (view.tag == 14)
continue;
/*Do Nothing, this is the golden view that stays on screen. Maybe set it's frame or alpha, but don't hide it.
*/
else
[view setFrame:CGRectMake(0, self.view.bounds.size.height, 768, 1024)]; //set this to any value that puts the view offscreen or set alpha to 0
}
}
}
这一切都取决于您设置标签,选择了哪个索引以及要排除哪个视图。
虽然,根据您想要的更改或您需要更改的对象数量,此方法实际上可能更麻烦。