1

UISplitViewController の詳細ペインとしてテーブル ビューを使用したいと考えています。ツールバーを上部に配置するにはどうすればよいですか? テーブル以外の詳細ビューと同じ方法でバー ボタン アイテムを追加できるようにしたいと考えています。ありがとう。

4

3 に答える 3

3

この問題に対する私のフラストレーションは、ツールバーのような他の UI 要素を追加できない UITableViewController クラスを使用しようとしたことにありました。UIViewController オブジェクトを作成し、ツールバーとテーブル ビューをその nib に個別に追加することで解決しました。次に、ViewController にテーブル ビューのデリゲート メソッドとデータ ソース メソッドを実装させました。よく働く。

于 2010-06-25T07:03:25.433 に答える
0

一般的なパラダイムは、マスター ページと詳細ページの最上位コントローラーとして UINavigationControllers を使用することです。

したがって、ビュー階層は次のようになります (大まかに言えば)

  • アプリケーション ウィンドウ
    • UISplitViewController
      • マスター: UINavigationController
        • カスタムコントローラー(tableViewまたはUIView)があります
      • 詳細 : UINavigationController
        • カスタムコントローラー(UITableViewCONtroller / UIVIEWcontroller)がある

この大雑把な図が理にかなっていることを願っています。

UINavigationController を最上位コントローラーとして使用する特典として、ツールバーを「無料」で入手できます。

   self.navigationController.toolbar
于 2010-06-24T00:10:28.547 に答える
0

私はこれを別の方法で解決しました。navigationBar がない場合は、tableView の上部にツールバーを追加し、最初のセクションのヘッダーの高さを変更します。唯一の問題は、ツールバーが tableView でスクロールすることです。

これを TableViewController の ViewDidLoad に追加します

if (! self.navigationController.navigationBar) {
    UIToolbar *toolBar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, self.tableView.frame.size.width, 44)];
    toolBar.barStyle = UIBarStyleBlackOpaque;
    [self.tableView addSubview:toolBar];
}

このメソッドを追加します。

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection: (NSInteger)section
{
    return 50;
}
于 2012-12-30T20:29:34.330 に答える