将自定义select器添加到UIBarButtonItem
我是一个iOS新手。 我有一个导航栏button,点击时应执行我自己的function。 什么是最好的方法来做到这一点?
UIBarButtonItem *doneBarButtonItem=[[UIBarButtonItem alloc] init]; doneBarButtonItem.title=@"Done"; self.navigationItem.rightBarButtonItem = doneBarButtonItem; [doneBarButtonItem release];
一种方法是初始化目标和行动:
UIBarButtonItem *buttonHello = [[UIBarButtonItem alloc] initWithTitle:@"Say Hello" style:UIBarButtonItemStyleBordered target:self action:@selector(sayHello:)];
另一种方法是在创build之后设置目标和操作
[buttonHello setTarget:self]; [buttonHello setAction:@selector(sayHello:)];
目标是将被调用的对象的实例。 在自我的情况下,该方法将在这个对象的这个实例上。
动作是将被调用的方法。 通常情况下,你用IBAction来装饰它,以向devise者暗示这是一个动作。 它编译为无效。
- (IBAction)sayHello:(id)sender { // code here }
您可以使用各种不同的初始化调用,在此处的“实例方法”部分中列出:
- (id)initWithBarButtonSystemItem:(UIBarButtonSystemItem)systemItem target:(id)target action:(SEL)action - (id)initWithCustomView:(UIView *)customView - (id)initWithImage:(UIImage *)image style:(UIBarButtonItemStyle)style target:(id)target action:(SEL)action - (id)initWithTitle:(NSString *)title style:(UIBarButtonItemStyle)style target:(id)target action:(SEL)action
另外,你可以在这里查看一个正在使用的示例:
如何在运行时为UIBarButtonItem设置目标和操作
希望这可以帮助!