Изменение цвета фона выбранной ячейки?

Если вы посмотрите на библиотеку JavaScript Algolia Places , это те данные, с которыми они имеют дело, прежде чем они передаются в автозаполнение.

Вы должны найти все, что вам нужно в этом коде, а точнее для полного отображаемого имени найденного места, это построено из этого:

 const out = `${name}${type !== 'country' && country !== undefined ? ',' : ''}
 ${city ? `${city},` : ''}
 ${administrative ? `${administrative},` : ''}
 ${country ? country : ''}`
    .replace(/\s*\n\s*/g, ' ')
    .trim();
  return out;

(найдено в formatInputValue.js file ] `)

49
задан jww 11 October 2014 в 08:42
поделиться

4 ответа

var last_selected:IndexPath!

определяют last_selected:IndexPath в классе

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
    let cell = tableView.cellForRow(at: indexPath) as! Cell
    cell.contentView.backgroundColor = UIColor.lightGray
    cell.txt.textColor = UIColor.red

    if(last_selected != nil){
        //deselect
        let deselect_cell = tableView.cellForRow(at: last_selected) as! Cell
        deselect_cell.contentView.backgroundColor = UIColor.white
        deselect_cell.txt.textColor = UIColor.black
    }

    last_selected = indexPath
}
0
ответ дан 7 November 2019 в 11:11
поделиться

Если вы говорите о выбранных ячейках, свойство имеет вид -selectedBackgroundView . Это будет показано, когда пользователь выберет вашу ячейку.

7
ответ дан 7 November 2019 в 11:11
поделиться

Мне повезло со следующими:

- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
    bool isSelected = // enter your own code here
    if (isSelected)
    {
        [cell setBackgroundColor:[UIColor colorWithRed:1 green:1 blue:0.75 alpha:1]];
        [cell setAccessibilityTraits:UIAccessibilityTraitSelected];
    }
    else
    {
        [cell setBackgroundColor:[UIColor clearColor]];
        [cell setAccessibilityTraits:0];
    }
}
6
ответ дан 7 November 2019 в 11:11
поделиться

Изменение свойства selectedBackgroundView - правильный и самый простой способ. Я использую следующий код для изменения цвета выделения:

// set selection color
UIView *myBackView = [[UIView alloc] initWithFrame:cell.frame];
myBackView.backgroundColor = [UIColor colorWithRed:1 green:1 blue:0.75 alpha:1];
cell.selectedBackgroundView = myBackView;
[myBackView release];
92
ответ дан 7 November 2019 в 11:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: