0

私の問題の解決策が見つかることを願っています。私にはもうアイデアがないからです。

複数のセルを持つテーブルビューがあります。一部のセルには、contentView のサブビューとして別のビューがあります。

この追加のビューには 2 つのサブビューがあります。1 つの UIImageView と 1 つの UILabel です。

UIButtonをタップすると、UIImageViewが非表示/削除され、UILabelがtextColorを白(前は黒)に変更します。

UILabel は textColor を変更しますが、スーパービューから UIImageView を削除した後でも、UIImageView は引き続き表示されます。

コードはこんな感じ。
_adsc_dot_view は UIImageView です
_adsc_text_label は UILabel です

- (void)mc_set_selected:(BOOL)selected {
    if (selected) {
        _adsc_dot_view.hidden = YES;
        _adsc_text_label.textColor = [UIColor whiteColor];
    }
    else {
        _adsc_dot_view.hidden = NO;
        _adsc_text_label.textColor = [UIColor blackColor];
    }
}
4

4 に答える 4

0

UITableView を使用していて、UIImageView と UILabel を UITableViewCell のサブビューとして追加します。したがって、 [self.tableView reloadData]; を使用して UITabView をリロードする必要があると思います。または [YourTableName reloadData]; UIImageViewメソッドを非表示にして表示した後。それ以外の場合は、UIImageView タグまたは UITableViewCell インデックス パスを使用して、UIImageView を非表示および表示する必要があります。

于 2013-09-19T06:37:27.040 に答える
0

ターゲットデバイスは iOS 7 ですか? はいの場合は、セルのサブビューをレイアウトしてみてください。iOS 7でセルが更新されないという同様の問題がありました。

于 2013-09-19T06:41:14.230 に答える
0

Just reload table view cell after Remove/Hide ImageView.

于 2013-09-19T10:26:25.913 に答える