UITableView
セルを動的に作成し、それに3つのラベルを追加しています。不透明なnoとclearcolorを使用して、テーブルを透明にしました。しかし、セルはスペースなしで表示されています。セル間にスペースを与える必要があります。実際UITableViewCell
、xibファイルからカスタムをロードすると、スペースが自動的に表示されます。この問題を解決するにはどうすればよいですか?
3 に答える
カスタム間隔の UITableView
これを行うには、tableView セルをごまかします。デフォルトでは、単一の線、エッチングされた線、または何も指定できないため、代替手段を次に示します。tableView デリゲート メソッドをオーバーライドする必要があります。
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
セルの高さをそのコンテンツ、マージン/パディング/ライン幅で計算して返します。セルの背景色を に設定し、[UIColor clearColor]
テーブルの背景をセパレーターの目的の色にします。UITableViewCell をサブクラス化し、backgroundContainerView をアタッチして、セルの目的の背景色にします。すべてのサブビューをその backgroundContainerView にアタッチします。
最後に、UITableViewCell サブクラスで実装します
- (void)layoutSubviews
ここでは、それがセル全体であるかのように、コンテナ ビューでサブビューをレイアウトする必要があります。
この問題は、TableView と Custom セルの高さの違いによるものです。heightForRowAtIndexPath デリゲートでセルの高さを設定します。
UITableView には、 と の 2 つのプロパティがseparatorStyle
ありseparatorColor
ます。それらを使用して、セパレーターの色がclearcolorになっている可能性があるので、変更してみてください。