#ios4
#ios4
Вопрос:
я использовал этот код для обнаружения касания в uiscrollview, который находится поверх uiview
подкласс
файл .h
@interface AppScrollView : UIScrollView
{
}
@end
файл .m
#import "AppScrollView.h"
@implementation AppScrollView
- (id)initWithFrame:(CGRect)frame
{
return [super initWithFrame:frame];
}
- (void) touchesEnded: (NSSet *) touches withEvent: (UIEvent *) event
{
// If not dragging, send event to next responder
if (!self.dragging)
[self.nextResponder touchesEnded: touches withEvent:event];
else
[super touchesEnded: touches withEvent: event];
}
@end
а затем в другом классе, который я добавил
#import <UIKit/UIKit.h>
@class AppScrollView;
@interface SomeClass : UIViewController <UIScrollViewDelegate>
{
AppScrollView *scrollView;
...
}
@end
#import "AppScrollView.h"
@implementation SomeClass
...
- (void) touchesEnded: (NSSet *) touches withEvent: (UIEvent *) event
{
// Process the single tap here
...
}
...
@end
я использовал также scroll1.delegate=self;
, но ничего не происходит!!!
Кто-нибудь может мне помочь?
Комментарии:
1. Вы создаете подкласс только для обнаружения касания?
2. да, именно поэтому я внедрил подкласс
Ответ №1:
Используйте Gesture Recognizers
. В частности UITapGestureRecognizer
.