9

私はプログラムでnavigationBarをtableViewControllerに追加しようとしています:

スクリーンショットの例:

PUSH Segueから来たとき、ビルダーは必要に応じてナビゲーションアイテムを含むナビゲーションバーを追加します。

しかし、問題は、MODAL Segueを形成するときに、次のようなコードでバーを追加しようとすることです。

UINavigationBar *naviBarObj = [[UINavigationBar alloc] initWithFrame:CGRectMake(0, -260, 320, 44)];
[self.view addSubview:naviBarObj];
UIBarButtonItem *cancelItem = [[UIBarButtonItem alloc] initWithTitle:@"Cancel"         style:UIBarButtonItemStyleBordered target:self action:@selector(cancelButtonPressed)];
UIBarButtonItem *doneItem = [[UIBarButtonItem alloc] initWithTitle:@"Done" style:UIBarButtonItemStyleBordered target:self action:@selector(doneButtonPressed)];

UINavigationItem *navigItem = [[UINavigationItem alloc] initWithTitle:@"Navigation Title"];
navigItem.rightBarButtonItem = doneItem;
navigItem.leftBarButtonItem = cancelItem;
naviBarObj.items = [NSArray arrayWithObjects: navigItem,nil];

....

- (void) cancelButtonPressed { }
- (void) doneButtonPressed { }

しかし、何も表示されません...トップバーはありません。

4

1 に答える 1

4

naviBarObjのフレームypointは-260です。これにより、何も表示されない可能性があります。

于 2012-05-21T15:12:45.667 に答える