사용자 지정 대리인이 전화를받지 못합니다. 여기에 내 설정입니다.사용자 지정 대리인이 전화를받지 못합니다.
SlideView.h
#import <UIKit/UIKit.h>
@protocol SlideViewDelegate <NSObject
@required
-(void) didTapImageData:(NSMutableArray*)imageData atIndex:(int)index;
@end
@interface SliderView : UIScrollView<UIGestureRecognizerDelegate> {
__weak id<SlideViewDelegate> slideViewDelegate;
}
@property (nonatomic, weak) id<SlideViewDelegate> slideViewDelegate;
@end
@interface ViewController : UIViewController <
UIScrollViewDelegate,
SlideViewDelegate>{
SliderView *thumbGalleryView;//delegate and reference are set in XCode
}
ViewController.m
ViewController.h SlideView.m#import "SliderView.h"
@implementation SliderView
@synthesize slideViewDelegate;
- (void) handleTap:(UITapGestureRecognizer *)recognizer{
NSLog(@"tapped");
[[self slideViewDelegate] didTapImageData: imageData atIndex:0 ];
}
: ViewController
는 UIScrollView
의 서브 클래스 인 오브젝트를 가지고 SliderView
#import "ViewController.h"
@implementation ViewController
-(void)didTapImageData:(NSMutableArray*) imageData atIndex:(int)index{
NSLog(@"NOT WORKING HERE");
}
그래서 ViewController
은 위의 방법으로 전화를 수신하지 않습니다. thumbGalleryView
은 ViewController
으로, 위임은 ViewController
으로 설정되어 있습니다. SlideView
의 handleTap
은 정상적으로 메시지를 인쇄하고 있지만 [[self slideViewDelegate] didTapImageData: imageData atIndex:0 ];
은 무시됩니다. 왜?
이것은 트릭을 만들었습니다. 데모 해줘서 고마워. – Vad
그것은 '내 기쁨 :) –