3

UITableViewController のグループ化されたスタイルの TableView の上部 (上) に空き領域が必要です。トップとは?TableView の NavigationBar と SectionTitle の間の領域。

まず、私が使用した

UIEdgeInsets inset = UIEdgeInsetsMake(60, 0, 0, 0);
self.tableView.contentInset = inset;

それは最初の瞬間にうまく機能します。まさに私が必要としているものです。しかし、TableView を下にスクロールすると、ビューは新しい空き領域に移動します。

一緒に仕事をする

- (void)scrollViewDidScroll:(UIScrollView *)scrollView

動作しないようです:(

なにか提案を?

4

4 に答える 4

4

テーブル ビュー コントローラーのルート ビューはテーブルビューであるため、それらを追加するためのスーパービューがないため、その上または下に配置することはできません。

解決策は、代わりに UIViewController サブクラスを使用することです。これに、任意のサイズのテーブル ビューを追加し、その上下にビューを追加できます。ビュー コントローラーがデリゲート プロトコルとデータソース プロトコルを実装していることを宣言し、これらのアウトレットを IB に接続する必要がありますが、それはテーブル ビュー コントローラーと同じです。

基本的なメッセージ - UITableViewController なしでテーブル ビューを使用できます。

于 2012-07-21T16:10:12.857 に答える
2

テーブルが読み取り専用の場合は、jrturtonで十分です。それ以外の場合は、次のように、UIViewControllerから囲まれたUITableViewに編集呼び出しを伝播する必要もあります。

//In UIViewControler propagate call to tableView property
- (void)setEditing:(BOOL)editing animated:(BOOL)animated {
  [super setEditing:editing animated:animated];  
  [self.tableView setEditing:editing animated:animated];
}
于 2012-11-20T19:56:11.840 に答える
0

テーブル ビューの上にスペースが必要ですが、スクロールしたときにテーブル ビューでカバーされませんか?

UILabelテーブル ビューをいじる代わりに、テーブル ビューの上またはテーブル ビューのヘッダーがあった場所にを追加してみてください。次に、テーブル ビューの座標をラベルの座標のすぐ下から開始します。このようにスクロールすると、スペース、つまり; ここのラベルは常に表示されます。

これを行う理由はUITableView、ヘッダーやフッターなど、 に対して定義されたすべてのものは常にテーブルに関連付けられており、個別に操作できないためです。

于 2012-07-21T15:44:08.243 に答える
0

table の headerView プロパティを使用して、必要なサイズのビューを 1 つ作成し、それを table のヘッダー ビューに配置すると、正確に必要なものが得られます。

-(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)sectiontableView のデリゲート メソッドを使用して、最初のセクションのヘッダー ビューを配置できます。

ハッピーコーディング:)

于 2012-07-21T06:46:38.940 に答える