10

iPad アプリのビューファインダー ( iTunes リンク) で、Keynote の Build In ポップオーバーのフッターに見られるように、UISegmentedControl の外観を再現しようとしています。

基調

iPad HIG は、下揃えの UIToolbar を使用することを提案していますが、外観は正しくありません。このスクリーンショットは Black Opaque を示していますが、Keynote に一致する標準スタイルはありません。

ビューファインダー

Keynote の外観を再現するためのアドバイスをいただければ幸いです。iPad に Keynote がない場合は、Maps の Bookmarks ポップオーバーのフッターで同じテクニックを見ることができます。

4

3 に答える 3

18

必要なのはtoolbarItems、トップUIViewControllerUIPopover設定して適切に構成することです。次のようなことを考えてみましょう:

        NSArray *segmentedItems = [NSArray arrayWithObjects:@"Bookmarks", @"Recents", @"Contacts", nil];
        UISegmentedControl *ctrl = [[UISegmentedControl alloc] initWithItems:segmentedItems];
        ctrl.segmentedControlStyle = UISegmentedControlStyleBar;
        ctrl.selectedSegmentIndex = 0;

        UIBarButtonItem *item = [[UIBarButtonItem alloc] initWithCustomView:ctrl];
        ctrl.frame = CGRectMake(0.0f, 5.0f, 320.0f, 30.0f);

        NSArray *theToolbarItems = [NSArray arrayWithObjects:item, nil];
        [self setToolbarItems:theToolbarItems];
        [ctrl release]; 
        [item release];

編集:今、私はそれを手に入れました。tintColorを設定しないでください。正しい色を継承します(それが何であれ)。以下のスクリーンショットは、Google マップ アプリのスクリーンショットとまったく同じように見えます。

代替テキスト http://www.memorylifter.com/services/dev/linklist/SCREENSHOT_TABBAT.png

于 2010-07-19T19:25:25.057 に答える
1

この問題に遭遇しました。UINavigationController を UIPopover にプッシュする必要があります。次に、ビューをそのナビゲーション コントローラーに含める必要があります。これにより、トップバー (適切にフォーマットされるナビゲーションバー) が取得されます。下部のバーはこれに従うと思いますが、テストしていません!

于 2010-09-24T17:35:33.977 に答える
-1

セグメント化されたコントロールをtableViewのフッタービューに配置しているようです。(最初のスクリーンショット)。可能であればそれを試してみます。それ以外の場合は、UIToolbar をサブクラス化し、drawRect: をオーバーライドして、必要な外観を得ることができます。

于 2010-07-19T19:05:11.080 に答える