0

私はiOS開発UINavigationControllerの初心者です。rootviewcontrollerとして持っていUIWindowます。サブクラスにプログラムで追加しましたUITabbarController。最初のコントローラーとしてデフォルトのTabbarcontrollerを選択しました。ここでは、ナビゲーションバーに3つのボタンを追加しようとしています。

コレントコードを送ってもらえますか?前もって感謝します

4

3 に答える 3

0

これがアドオンの簡単なコードUIButtonですUINavigationBar

次のコードでは、ボタンを追加できますFlexibleSpace

NSMutableArray *barItems = [[NSMutableArray alloc] init];
    UIBarButtonItem *flexSpace = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil];
    [barItems addObject:flexSpace];
    [flexSpace release];

    UIBarButtonItem *btnFirst = [[UIBarButtonItem alloc] initWithTitle:@"First" style:UIBarButtonItemStyleBordered target:self action:@selector(FirstTapped:)];
    [barItems addObject: btnFirst];

    UIBarButtonItem *btnSecond = [[UIBarButtonItem alloc] initWithTitle:@"Second" style:UIBarButtonItemStyleBordered target:self action:@selector(SecondTapped:)];
    [barItems addObject:btnSecond];

UIBarButtonItem *btnThird = [[UIBarButtonItem alloc] initWithTitle:@"Third" style:UIBarButtonItemStyleBordered target:self action:@selector(ThirdTapped:)];
    [barItems addObject: btnThird];

self.navigationItem.rightBarButtonItems = barItems;

ボタン関連のメソッド

-(void) FirstTapped:(UIBarButtonItem *)sender{

//perform your action

}
-(void) SecondTapped:(UIBarButtonItem *)sender{

//perform your action

}

-(void) ThirdTapped:(UIBarButtonItem *)sender{

//perform your action

}

注: self.navigationItem.rightBarButtonItems iOS5以降でのみ機能します。

于 2013-02-22T08:27:53.087 に答える
0
UIButton *customButton = [UIButton buttonWithType:UIButtonTypeCustom];

// here is custom button setup //

UIBarButtonItem *item = [[UIBarButtonItem alloc] initWithCustomView:customButton];

[self.navigationItem setLeftBarButtonItem:item animated:YES];
于 2013-02-22T10:07:51.393 に答える
0

左側または右側に複数のボタンを追加するには、次のメソッドのいずれかを呼び出す必要があります。

- (void)setRightBarButtonItems:(NSArray *)items animated:(BOOL)animated

- (void)setLeftBarButtonItems:(NSArray *)items animated:(BOOL)animated

配列には、クラスitemsのインスタンスが含まれています。UIBarButtonItemこのようにインスタンス化できます

UIBarButtonItem *FirstButton = [[UIBarButtonItem alloc] 
                       initWithTitle:@"Title"                                            
                               style:UIBarButtonItemStyleBordered 
                              target:self 
                              action:@selector(buttonTapped:)];

buttonTapped:次に、ボタンがタップされたときに呼び出されるセレクターを実装する必要があります。

-(void)buttonTapped:(UIBarButtonItem *)button
{
  // do the things that should happen when the button is pressed
}

左側または右側に配置したくない場合はUIView、ボタンを含む を自分で作成し、ビューを の titleView に設定することもできますUINavigationItem。この効果は、Facebook アプリのボタンに似ています。

[self.navigationItem setTitleView:yourView];
于 2013-02-22T08:35:04.273 に答える