2

私の UITableViewCells はすべて、定義済みの「字幕」スタイルです。選択したセルの背景画像を別の画像に設定したい。これを実装する方法をすべて試してみましたが、stackoverflow で説明されているすべての方法が失敗したようです。selectedBackgroundView プロパティを変更する他の簡単な方法をもう一度試しました。

cell.selectedBackgroundView = [[UIView alloc] initWithFrame:cell.bounds] ;
cell.selectedBackgroundView.backgroundColor = [UIColor yellowColor];

しかし、うまくいきません。それの何がいけないの ?

4

2 に答える 2

18

私が理解しているように、選択した背景画像をセルに設定したいですか?

cell.selectedBackgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"backgroundImage.png"]];

編集:

私が知っているUITableViewCellように、そのような一般的なケースでは選択後に強調表示できません:

  1. どこか決まっているcell.selectionStyle = UITableViewCellSelectionStyleNone;
  2. 実装すると、 ;willSelectRowAtIndexPathが返されます。nil
  3. セットあり[self.tableView setAllowsSelection:NO];
  4. あなたが設定するかもしれませんself.tableView.userInteractionEnabled = NO; またはcell.userInteractionEnabled = NO;
  5. UITableViewCell をサブクラス化し、そのようなメソッドを正しく実装していないかsetSelected:animated:setHighlighted:animated

cellForRowAtIndexPath問題を調査するためにメソッドコードを共有する場合があります

于 2013-08-06T17:37:31.570 に答える