1. 程式人生 > >navigation右側新增多個按鈕(三種方法)

navigation右側新增多個按鈕(三種方法)

方法一:

    UIToolbar* tools = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, 100, 40)];
    [tools setBarTintColor:[UIColor whiteColor]];
    NSMutableArray* buttons = [[NSMutableArray alloc] initWithCapacity:2];
    UIBarButtonItem *saveButton = [[UIBarButtonItem alloc]initWithTitle:@"儲存" style:UITabBarSystemItemContacts target:self action:@selector(save:)];
    UIBarButtonItem *pulishButton = [[UIBarButtonItem alloc]initWithTitle:@"釋出" style:UITabBarSystemItemContacts target:self action:@selector(pulish:)];
    [pulishButton setTintColor:kMainColor];
    [buttons addObject:saveButton];
    [buttons addObject:pulishButton];
    [tools setItems:buttons animated:NO];
    UIBarButtonItem *myBtn = [[UIBarButtonItem alloc] initWithCustomView:tools];
    self.navigationItem.rightBarButtonItem = myBtn;


方法二:

    UIBarButtonItem *pulishButton = [[UIBarButtonItem alloc]initWithTitle:@"釋出" style:UITabBarSystemItemContacts target:self action:@selector(pulish:)];
    [pulishButton setTintColor:kMainColor];
    UIBarButtonItem *saveButton = [[UIBarButtonItem alloc]initWithTitle:@"儲存" style:UITabBarSystemItemContacts target:self action:@selector(save:)];
    [self.navigationItem setRightBarButtonItems:[NSArray arrayWithObjects: pulishButton,saveButton,nil]];

方法三:

    UIButton *pulishButton=[UIButton buttonWithType:(UIButtonTypeCustom)];
    [pulishButton setTitle:@"釋出" forState:(UIControlStateNormal)];
    [pulishButton setTitleColor:kWenZiColor forState:(UIControlStateNormal)];
    pulishButton.layer.masksToBounds=YES;
    pulishButton.layer.cornerRadius=3;
    pulishButton.titleLabel.font=[UIFont systemFontOfSize:15];
    pulishButton.backgroundColor=[UIColor cyanColor];
    [pulishButton addTarget:self action:@selector(pulish:) forControlEvents:UIControlEventTouchUpInside];
    
    
    UIButton *saveButton=[UIButton buttonWithType:(UIButtonTypeCustom)];
    [saveButton setTitle:@"儲存" forState:(UIControlStateNormal)];
    [saveButton setTitleColor:[UIColor whiteColor] forState:(UIControlStateNormal)];
    saveButton.layer.masksToBounds=YES;
    saveButton.layer.cornerRadius=3;
    saveButton.titleLabel.font=[UIFont systemFontOfSize:15];
    saveButton.backgroundColor=kMainColor;
    [saveButton addTarget:self action:@selector(save:) forControlEvents:UIControlEventTouchUpInside];
    
    pulishButton.frame = CGRectMake(0, 0, 50, 30);
    saveButton.frame=CGRectMake(0, 0, 50, 30);
    
    UIBarButtonItem *pulish = [[UIBarButtonItem alloc] initWithCustomView:pulishButton];
    UIBarButtonItem *save = [[UIBarButtonItem alloc] initWithCustomView:saveButton];
    
    [self.navigationItem setRightBarButtonItems:[NSArray arrayWithObjects: pulish, save,nil]];

個人認為 方法三最好= = 三種方法供大家參考 如果有更好的 歡迎補充與分享哦= =