在我的应用程序中,我有一个UIScrollView,在其中我以编程方式创建了UIImageViews。这基于Xcode中的Tab-bar模板。我想要做的是在按下特定图像时更改Tabs,虽然我能够将事件注册为触摸,但更改tabIndex不执行任何操作。 输入以下代码:
UITabBarController *tab=self.tabBarController;
if (tab){
NSLog(@"Good");
}
else {
NSLog(@"No Good");
始终导致无法记录好。我可以在这里看到我编写的代码,其中我的UIScrollView是ScrollViewer类型: @implementation scrollViewer - (void)touchesEnded:(NSSet *)触及withEvent:(UIEvent *)事件{
if (!self.dragging) {
NSLog(@"Recieved Touch!");
UITouch *aTouch = [touches anyObject];
MainView *theInstance = [[MainView alloc] init];
CGPoint point = [aTouch locationInView:self];
theInstance.ycoord = point.y;
[theInstance touchHand];
}
[super touchesEnded: touches withEvent: event];
}
@end
感谢任何帮助!
答案 0 :(得分:0)
您从未向我们提供任何示例输出:
NSLog(@“Y Coord =%d”,已调整);
但我会假设该值应该导致切换。
首先,您需要记录self.tabbarcontroller以确保它不是nil。如果没问题,系统可能不希望让你切换内部触摸事件(无论如何都是糟糕的形式)。我会这样设置:
dispatch_async(dispatch_get_main_queue(), ^{ do code here } );
所以它会晚点运行。