1. ホーム
  2. iphone

[解決済み] iOS UITableViewのHeaderView(セクションヘッダーではない)を追加する

2022-04-23 09:33:49

質問

例えば連絡先アプリのように、テーブルヘッダー(セクションヘッダーではない)を付けたいのですが、どうすればいいですか?

テーブルの上の画像の横にラベルを貼るという、まさにそのようなものです。

全表示をスクロールできるようにしたいので、テーブルの外にそれらを配置することはできません。

どうすればいいのでしょうか?

どのように解決するのですか?

UITableView には tableHeaderView プロパティがあります。 その上に好きなビューを設定してください。

新しい UIView をコンテナとして使用し、テキストラベルとイメージビューをその新しい UIView を設定し tableHeaderView を新しいビューに設定します。

例えば UITableViewController :

-(void)viewDidLoad
{
     // ...
     UIView *headerView = [[UIView alloc] initWithFrame:CGRectMake(XXX, YYY, XXX, YYY)];
     UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(XXX, YYY, XXX, YYY)];
     [headerView addSubview:imageView];
     UILabel *labelView = [[UILabel alloc] initWithFrame:CGRectMake(XXX, YYY, XXX, YYY)];
     [headerView addSubview:labelView];
     self.tableView.tableHeaderView = headerView;
     [imageView release];
     [labelView release];
     [headerView release];
     // ...
}