Как кто-то еще указал, рекомендуется не представить Список публично, и FxCop будет хныкать, если Вы сделаете так. Это включает наследование от Списка как в:
public MyTypeCollection : List<MyType>
В большинстве случаев общедоступные API представят IList (или ICollection или IEnumerable) как соответствующий.
В случаях, где Вы хотите свой собственный набор, можно сохранить FxCop тихим путем наследования Набору вместо Списка.
Лучше всего это сделать следующим образом:
// Customize the appearance of table view cells.
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"myCellId";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
UIView *v = [[[UIView alloc] init] autorelease];
v.backgroundColor = [UIColor redColor];
cell.selectedBackgroundView = v;
}
// Set up the cell...
cell.textLabel.text = @"foo";
return cell;
}
Важной частью для вас является инструкция cell.selectedBackgroundView = v;
.
Вы можете заменить здесь самый простой вид 'v' любым, который вам нравится.
Я не думаю, что вы можете использовать собственный цвет. Однако вы можете использовать следующее свойство UITableViewCell
@property(nonatomic) UITableViewCellSelectionStyle selectionStyle
. Стиль выбора - это константа backgroundView, которая определяет цвет ячейки при ее выборе. Значение по умолчанию - UITableViewCellSelectionStyleBlue. Начиная с
typedef enum {
UITableViewCellSelectionStyleNone,
UITableViewCellSelectionStyleBlue,
UITableViewCellSelectionStyleGray
} UITableViewCellSelectionStyle;
, вы можете переключаться с синего по умолчанию на серый или вообще не выбирать цвета.
Другой способ сделать это - переместить ячейку в новом представлении с любым желаемым цветом и около 50% непрозрачности. Вы перемещаете это представление в ячейку, когда получаете вызов -setSelected: animated:. Когда я говорю «двигаться», у вас всегда может быть вид на верхнюю часть вашей ячейки, но просто выключите и включите скрытый бит по мере необходимости.