我在uiviewcontroller里面的uiScrollview里面有一个uibutton。当我单击按钮时,我希望能够在uiviewcontroller中调用方法。
我在我的uiscrollview中调用方法的按钮上有以下操作:
[categoryButton addTarget:self action:@selector(categoryButtonWasClicked :) forControlEvents:UIControlEventTouchUpInside];
但是这只是在我的uiscrollview中调用一个方法(我仍然会保留)。我如何在viewcontroller中调用方法??
感谢您提供任何帮助。
答案 0 :(得分:1)
enter code here
尝试做这样的事情
#import <UIKit/UIKit.h>
@protocol myUIScrollViewProtocol <NSObject>
-(void)buttonWasPressInScrollView:(id)sender;
@end
@interface MyUIScrollView : UIScrollView
@property (weak, nonatomic)id myDelegate;
@end
创建UIScrollView的子类并添加委托,然后将UIViewController指定为委托,并在其中实现“buttonWasPress ..”方法。
然后从你的uiScrollView中的categroryButtonWasClicked方法:
-(void)categoryButtonWasClicked{
if ([self.myDelegate respondsToSelector:@selector(buttonWasPressInScrollView:)]){
[self.myDelegate buttonWasPressInScrollView:self];
}
...
}
@interface MyViewController : UIViewController <myUIScrollViewProtocol>