我对IBAction代表有个问题。我通过接口生成器在xib文件中创建按钮,并希望在另一个控制器中使用它。
按钮是可点击的,我没有看到任何错误,但它没有显示警报或NSLog。如果我尝试在LetterView.m中执行NSLog,它的工作非常好,但在ViewController中却不是。我该怎么办?
谢谢你帮忙。
我目前所做的是:
LetterView.h
#import <UIKit/UIKit.h>
@class LettersView;
@protocol ButtonHint <NSObject>
-(void)hintButtonView:(LettersView*)letterView;
@end
@interface LettersView : UIView @property (strong, nonatomic) IBOutlet UIView *lettersView;
- (IBAction)hintButton:(id)sender;
- (IBAction)removeButton:(id)sender;
@property (nonatomic, assign) id <ButtonHint> hintDelegate;
@endLetterView.m
-(IBAction)hintButton:(id)sender {
[self.hintDelegate hintButtonView:self];
}ViewController.h
@interface GameViewController : UIViewController <ButtonDisplayChar, ButtonHint>ViewController.m
-(void)hintButtonView:(LettersView *)letterView {
NSLog(@"DSfdfsadasda");
[self addAlert:@"HINT" andMessage:helpstr andButton:@"Thanks"];
}发布于 2016-08-17 11:19:07
您可以在其他视图控制器中添加button示例的目标:在xib有按钮。
在其他视图控制器中使用该按钮作为目标。
示例:优先于视图控制器
var letterVw : LetterView?
letterVw.myFirstButton.addTarget(self, action: #selector(myClass.pressed(_:)), forControlEvents: .TouchUpInside)比
func pressed(sender: UIButton!) {
}https://stackoverflow.com/questions/38994972
复制相似问题