1

これについてはいくつかの記事を見てきましたが、うまくいかないようです。私は基本的にUITableViewを持っていて、ポップオーバーコントローラの上部にソートボタンが必要です。私はこのポストに従った:開始するためにUIPopoverController toolbar at top。私のコントローラでは、navigationControllerのrootViewControllerですが、私はUISegmentControlを作成して、それを一番上に置きます。しかし、それは中央にないという点で絵のようには見えません。私はポップオーバーにそれを得る方法は、このようなポップオーバーののviewDidLoadであるかもしれないので:UISegmentControlをUIPopoverControllerの上部にあるツールバーの中央に配置する方法

また
UISegmentedControl *topSegmentControl = [[UISegmentedControl alloc] initWithItems:[NSArray arrayWithObjects:@"One", @"Two", @"Three", @"Four", nil]]; 
    topSegmentControl.backgroundColor = [UIColor clearColor]; 
    topSegmentControl.segmentedControlStyle = UISegmentedControlStyleBar; 
    UIBarButtonItem *toolBarCustom = [[UIBarButtonItem alloc] initWithCustomView:topSegmentControl]; 
// UIBarButtonItem *spaceItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil]; 
    self.navigationItem.leftBarButtonItem = toolBarCustom; 

、私はツールバーのpopovercontrollerの下部にあるデータを提示したい場合、私はわからないんだけどどこでそれを行うのですか?同じ例を次に示します。UIPopoverController toolbar at top、私はこのような何かをするだろう、私のnavigationControllerに考えた:

UISegmentedControl *topSegmentControl = [[UISegmentedControl alloc] initWithItems:[NSArray arrayWithObjects:@"BottomOne", @"BottomTwo", @"BottomThree", nil]]; 
// topSegmentControl.backgroundColor = [UIColor clearColor]; 
    topSegmentControl.segmentedControlStyle = UISegmentedControlStyleBar; 
    UIBarButtonItem *toolBarCustom = [[UIBarButtonItem alloc] initWithCustomView:topSegmentControl]; 
    UIBarButtonItem *spaceItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil]; 
    NSArray *array = [NSArray arrayWithObjects:spaceItem, toolBarCustom, spaceItem, nil]; 
    [navController setToolbarItems:toolBarCustom]; 
    [navController setToolbarHidden:NO]; 

私はこれをしようとすると、私はそれで何もツールバーを参照してください、それはの残りの部分よりも軽い色合いですポップオーバー。

要約すると、例のようなナビゲーションコントローラを持つポップオーバーのツールバーまたはbarbuttonitemsをどこで初期化するかについてはわかりません。私はまた、どのようにデータを中心に置くのか分からない。ありがとう。

答えて

2

UISegmentedControlをルートビューコントローラーnavigationItemtitleViewとして設定すると、おそらく最適です。

+0

しかし、UIBarButtonItemはUIViewの子ではありません。 – Crystal

+1

UIBarButtonItemを作成する必要はありません。文字通り 'self.navigationItem.titleView = topSegmentControl'を設定します。 –

関連する問題