0

最初に「mainView」という動的ビューを作成しました。その中にナビゲーションバーを追加しました。その後、ナビゲーションバーに右のバーボタンを2つ追加したいと思います。このようにコーディングすると、ナビゲーションバー付きのビューが表示されます。しかし、右のバーボタンが表示されていません。

1.ナビゲーションコントローラなしでナビゲーションバーを追加することはできますか?

2.右バーのボタンが表示されないのはなぜですか?

 //mainView Creation
UIView *mainView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height)];
mainView.backgroundColor =[UIColor grayColor];
[self.view addSubview:mainView];

//NavigationBar
UINavigationBar *NavigationBar = [[UINavigationBar alloc]initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, 45)];
NavigationBar.backgroundColor = [UIColor orangeColor];
[mainView addSubview:NavigationBar];

//rightbarView Creation
UIView *rightbarView = [[UIView alloc] init];
rightbarView.backgroundColor = [UIColor orangeColor];

//powerCut Button
UIButton *powerCutbutton = [[UIButton alloc] initWithFrame:CGRectMake(150, 20, 50, 14.01)];
[rightbarView addSubview:powerCutbutton];
UIImage *powercutimage = [UIImage imageNamed:@"powercut.jpg"];
[powerCutbutton setImage:powercutimage forState:UIControlStateNormal];

// addConnection button
UIButton *addConnectionbutton = [[UIButton alloc] initWithFrame:CGRectMake(210, 20, 50, 14.01)];
[rightbarView addSubview:addConnectionbutton];
UIImage *addimage = [UIImage imageNamed:@"add.png"];
[addConnectionbutton setImage:addimage forState:UIControlStateNormal];

// Barbutton item
UIBarButtonItem *item = [[UIBarButtonItem alloc] initWithCustomView:rightbarView];
//[self.navigationItem setRightBarButtonItems:[NSArray arrayWithObjects:powerCutbutton, addConnectionbutton, nil]];

// setting rightbar button item
self.navigationItem.rightBarButtonItem = item;
4

1 に答える 1

1

バー ボタンの配列を作成します。setLeftBarButtonItems ではなく setLeftBarButtonItem as :

UIBarButtonItem * barbtn1;
UIBarButtonItem * barbtn2;
UIBarButtonItem * barbtn3;

[self.navigationItem setLeftBarButtonItems:@[barbtn1,barbtn2,barbtn3]];

また

[self.navigationItem setRightBarButtonItems:@[barbtn1,barbtn2,barbtn3]];

それがあなたに役立つことを願っています

于 2015-12-23T13:20:33.447 に答える