我想在这个问题前面加上我对iphone应用程序开发的新事实,并且多次相信我可能会超过我的头脑。我试图找到一个动作,允许我在我的全屏UIScrollView中双击任何地方以返回我的主菜单(MainMenuViewController)。
我目前为ScrollViewController运行以下代码...
ScrollViewController.h
#import <UIKit/UIKit.h>
@interface ScrollViewController : UIViewController <UIScrollViewDelegate>
{
}
@end
ScrollViewController.m
#import "ScrollViewController.h"
UIScrollView *myScrollView;
UIPageControl *myPageControl;
@implementation ScrollViewController
- (void)loadScrollViewWithPage:(UIView *)page
{
int pageCount = [[myScrollView subviews] count];
CGRect bounds = myScrollView.bounds;
bounds.origin.x = bounds.size.width * pageCount;
bounds.origin.y = 0;
page.frame = bounds;
[myScrollView addSubview:page];
}
...etc
在ScrollView控制器中实现双击以允许我返回到我的MainMenuViewController的任何建议或示例代码将非常感激。另外,请在视图中包含任何Interface Builder更改(如有必要)。我已经在论坛上倾倒了几天,但未能成功实施此操作。感谢... R.J。
答案 0 :(得分:1)
首先,创建UIScrollView的子类:
#import <UIKit/UIKit.h>
@interface MyScrollView : UIScrollView {
}
@end
实施它:
#import "MyScrollView.h"
@implementation MyScrollView
- (void) touchesEnded: (NSSet *) touches withEvent: (UIEvent *) event {
if (!self.dragging) {
[self.nextResponder touchesEnded: touches withEvent:event];
}
[super touchesEnded: touches withEvent: event];
}
- (void)dealloc {
[super dealloc];
}
@end
然后,在主View Controller中使用此子类而不是普通的UIScrollView。这将调用touchesEnded:withEvent:方法(或者,您可以调用任何您想要的方法)。然后,跟踪双击(如果您需要有关如何操作的信息,请告诉我。)