これが私がやったことです:
xib
カスタム テーブル セクション ヘッダーに使用される小さな UIView を持つカスタム ファイルを作成しました。カスタムxib
ファイルを分類しました。
これをヘッダーとしてtableViewに追加したい。いくつかのリソースを見てきましたが、それらは古くなっているか、情報が不足しているようです。
ドキュメントを見ると、次の手順でカスタム ヘッダーを追加するための参照が表示されます。
テーブル ビューにヘッダー ビューまたはフッター ビューを認識させるには、それを登録する必要があります。これを行うには、UITableView の registerNib:forCellReuseIdentifier: または registerClass:forCellReuseIdentifier: メソッドを使用します。
ストーリーボード ビューに tableView を追加すると、XCode 内で再利用識別子を簡単に割り当てることができました。カスタム セルxib
ファイルを作成することもでき、XCode 内で識別子を再利用する場所もありました。
セクション ヘッダーのカスタム UIView を作成したときに、再利用識別子のエントリがありませんでした。これがないと、使い方がわかりませんregisterNib:forCellReuseIdentifier
。
詳細:tableView
内部のある絵コンテ シーンがあります。tableView
はリンクされたカスタム クラスのものであり、オブジェクトtableView
は親ビューのViewController
ファイルにアウトレットを持っています。
親はとViewController
の両方です。ここでも、問題なくカスタム セルを実装できました。タイトル以外の方法でヘッダーを変更することさえできません。UITableViewDataSourceDelegate
UITableViewDelegate
[[self tableHeaderView] setBackgroundColor:[UIColor clearColor]];
カスタム クラスからメソッドを呼び出してみましたがtableView
、何も起こりません。次のようにアウトレット名を使用して、親ViewController
クラス
でこのメソッドを使用してみました。[[self.tableOutlet tableHeaderView] setBackgroundColor:[UIColor clearColor]];
どんな助けでも大歓迎です。
編集: (背景を透明に変更することはできません)
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
HeaderView *headerView = [self.TableView dequeueReusableHeaderFooterViewWithIdentifier:@"tableHeader"];
// Set Background color
[[headerView contentView] setBackgroundColor:[UIColor clearColor]];
// Set Text
headerView.headerLabel.text = [self.sectionArray objectAtIndex:section];
return headerView;
}