3

テーブルビューのサイズを縮小したい分割ビューコントローラーを作成しましたが、tableViewコントローラーが組み込まれているため、コードからテーブルのサイズを変更する方法はありますか?つまり、4行しかなく、すべての側面を取得しますsplitViewController では、tableViewController のサイズを縮小したいと考えています。My Root controller では tableViewController であるため、この問題を解決する方法はあります。

また、テーブルの画像の下に画像を添付しました。レコードは3つしかないため、空の行も表示している3行のみを表示する必要があります。

ここに画像の説明を入力

4

2 に答える 2

1

UITableView のデリゲート メソッドで各行の高さを設定できます。

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath;

高さを設定したらreload、テーブルに合わせる必要があります。

編集:

- (void) viewDidLoad
{
  [super viewDidLoad];

  self.tableView.tableFooterView = [[[UIView alloc] init] autorelease];
}
于 2013-02-28T10:20:29.283 に答える
0

このコードを追加できます。これにより、余分な行は表示されませんUITableView

- (void) addFooter
{
    UIView *v = [[UIView alloc] initWithFrame:CGRectZero];

    [self.myTableView setTableFooterView:v];

    [v release];
}

これで行の高さを設定することもできます

 - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
  //Set height according to your condition
  if (indexPath.row == 0)
  {
  }
  else
  {
  }
}

その後、リロードできますUITableView

[tableview reloadData];

編集:addFooter関数を呼び出す- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section

これも追加できます

- (float)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section {
     // This will create a "invisible" footer
     return 0.01f;
 }
于 2013-02-28T10:31:25.443 に答える