Как выбрать только часть UITableViewCell - PullRequest
0 голосов
/ 23 февраля 2012

У меня есть ячейки таблицы с изображением слева. Теперь каждый раз, когда кто-то касается ячейки, изображение меняется, но я хочу, чтобы оно менялось только при касании левой области ячейки. Как я могу это сделать?

Прямо сейчас у меня есть:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath;
{
    if (cell.imageView.image == [UIImage imageNamed:@"checkboxfull.png"]) {

        cell.imageView.image = [UIImage imageNamed:@"checkboxblank.png"];
    }
    else if(cell.imageView.image == [UIImage imageNamed:@"checkboxblank.png"]) {

      cell.imageView.image = [UIImage imageNamed:@"checkboxfull.png"];
      //[alert show];
    }
}

Ответы [ 3 ]

4 голосов
/ 23 февраля 2012

Ячейка таблицы - это просто UIView. Создайте собственную ячейку и используйте подкласс UIImageView или кнопку, которая реагирует на ваши нажатия.

Или используйте - (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event ячейки таблицы и вычислите местоположение.

Информацию о ячейках таблицы смотрите здесь

2 голосов
/ 23 февраля 2012

Я бы предложил добавить «UIGestureRecognizer» для каждого «UIImageView», см. Apple Docs . Для определения выбранного изображения используйте теги ...

0 голосов
/ 26 февраля 2016

Просто чтобы добавить больше помощи к великолепному ответу Эрика, я звоню супер, только если это то, чего я хочу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...