0

私はUiTableViewを持っています。セルをクリックすると、セル自体の高さが変わります。カスタム区切り線を追加する必要があります。私は常にセルの先頭に追加します。したがって、すべて正常に動作しますが、最後のセルの下部に区切り線がなく、ユーザーはテーブルビューの終わりを見ることができません。次のコードを追加しようとしています

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

そして、それを使用してみてください

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath

最初に新しいUIImageViewを作成します

@implementation MovieSessionsVC 
...
    UIImageView *seporatorView;
}

そして、これは私のコードです:

[seporatorView removeFromSuperview];
if (indexPath.row == self.sessions.count - 1) {
    seporatorView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"seporator.png"]];
    if([self cellIsSelected:indexPath])
        seporatorView.frame = CGRectMake(0, 106, cell.width, 0.5);
    else
        seporatorView.frame = CGRectMake(0, 63, cell.width, 0.5);
    [cell addSubview:seporatorView];
}

行数に self.sessions.count を使用し、選択時のセルの高さは 64 と 107 です

そのため、行が表示されて正常に動作しますが、テーブルビューを最大にすると消えます

ここに画像の説明を入力 ここに画像の説明を入力

4

2 に答える 2

1

何かを追加したい最後のセル、場合は線だけの場合は、フッタービューの上に線を引くのが最も簡単です。を作成し、それをのプロパティにUIView割り当てることができます。そのフッターの高さは1.0で、色で塗りつぶされています。もちろん、そのfooterViewに線を引くこともできます。そのためには、サブクラス化する必要があります。しかし、背景色と高さ1.0の標準で十分だと思います。tableFooterViewUITableViewdrawInRectUIViewUIView

于 2013-03-22T08:12:36.267 に答える
0

下の画像と同じように、セパレータ画像のサイズ変更プロパティを設定するだけです

ここに画像の説明を入力してください

セルのサイズ変更時に下部に配置する区切り画像..セルのサイズ変更プロパティがすべて選択されていることを確認します。

于 2013-03-22T08:06:46.140 に答える