【发布时间】:2017-02-25 19:09:20
【问题描述】:
-(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {
UITouch *aTouch = [touches anyObject];
NSLog(@"touch recognised");
CGPoint location = [aTouch locationInView:_mainView];
__block NSString *option = [[NSString alloc] init];
__block NSString *type = [[NSString alloc] init];
for (Selectors *tempView in _mainView.subviews) {
if (CGRectContainsPoint(tempView.frame, location)) {
NSLog(@"%@ : %@", tempView.option, tempView.type);
option = tempView.option;
type = tempView.type;
break;
}
}
[self moveToNextWeldCustomViewWithOption:option andType:type];
}
在我之前的 UIVIewController 中——那么我们在这里展示下一个 UIViewController
-(void)moveToNextWeldCustomViewWithOption:(NSString *)option andType:(NSString *)type {
WeldDesignViewController *lobby = [self.storyboard instantiateViewControllerWithIdentifier:@"WeldDesignViewController"];
lobby.option = option;
lobby.type = type;
[self presentViewController:lobby animated:NO completion:nil];
}
在下一个 UIViewController 中,在 viewDidAppear 方法之前我什么都不做 - 但是,开始的触摸仍在下一个 viewcontroller 中被识别。
【问题讨论】:
-
目前尚不清楚您到底在期待什么以及正在发生什么。你想在以前的视图控制器中获得这些触摸吗?你不是想要它们而是得到它们吗?
-
@ChrisTrahey 简而言之,下一个视图控制器正在记录前一个视图控制器中的触摸。
-
那么,2 号视图控制器不再出现在屏幕上,但正在触摸吗?这两个视图控制器是同一个类吗?
标签: ios objective-c uiviewcontroller presentviewcontroller