如何识别单个视图控制器中的最后一个视图?
Posted
技术标签:
【中文标题】如何识别单个视图控制器中的最后一个视图?【英文标题】:How to identify the last view in a single view controller? 【发布时间】:2017-09-28 06:23:01 【问题描述】:根据objective c
的需要,我在具有相同height/width
和hiding/showing
的单个视图控制器中使用3 个视图。
在这种情况下,我想获得我们显示的最后一个视图,因为我必须在为视图设置动画时管理该条件。
if (selectedBtnIndex == 1)
[_viewForTripDetail setHidden:NO];
[_viewForReceipt setHidden:YES];
[_viewForGetHelp setHidden:YES];
CATransition transition = [[CATransition alloc] init];
transition.duration = 0.2;
transition.type = kCATransitionPush;
transition.subtype = kCATransitionFromLeft;
[_viewForTripDetail.layer addAnimation:transition forKey:kCATransition];
_const_leadingViewBelowBtn.constant = _btnTripDetail.frame.origin.x+10;
flagTripDetailOpen = (int)1;
请帮我找到屏幕上显示的最后一个视图。
谢谢。
【问题讨论】:
显示你尝试过的代码 感谢您的回复。实际上我是通过单击按钮来管理它的,这意味着有三个按钮,当单击每个按钮时,将显示单独的视图并隐藏其余的视图。下面是我的代码 - if (selectedBtnIndex == 1) [_viewForTripDetail setHidden:NO]; [_viewForReceipt setHidden:YES]; [_viewForGetHelp setHidden:YES]; CATransition transition = [[CATransition alloc] init];过渡时间= 0.2;过渡.type = kCATransitionPush; transition.subtype = kCATransitionFromLeft; [_viewForTripDetail.layer addAnimation:transition forKey:kCATransition]; _const_leadingViewBelowBtn.constant = _btnTripDetail.frame.origin.x+10; flagTripDetailOpen = (int)1; 【参考方案1】:你可以点赞,
if (yourView.isHidden)
NSLog(@"view is hidden");
else
NSLog(@"view is not hidden");
或者
您也可以拿一个标志并在显示或隐藏视图时保持该标志!
【讨论】:
感谢您的回复和宝贵的时间,是的,我已经通过维护标志和选定的按钮索引来管理它,现在它可以工作了。 :)以上是关于如何识别单个视图控制器中的最后一个视图?的主要内容,如果未能解决你的问题,请参考以下文章