UITableViewCell - Как установить отсечение выбора? - PullRequest
0 голосов
/ 27 ноября 2011

В моем приложении у меня есть UITableView, и каждый UITableViewCell использует собственный фон и стиль со следующим кодом в методе "WillDisplayCell":

UIImage *cellBackgroundImage = [UIImage imageNamed:@"TableView_Cell_Background_iPhone"];

UIImageView *backgroundImage = [[UIImageView alloc] initWithImage:cellBackgroundImage     highlightedImage:cellBackgroundImage];

[cell setBackgroundView:backgroundImage];

[backgroundImage release];

Проблема в том, что я использую PNGпоскольку фон является прямоугольником, но UITableViewCell является закругленным прямоугольником с определенным свойством радиуса слоя.Когда я выбираю ячейку, фон переопределяет округлую природу ячейки, и я получаю резкий синий выделенный острый прямоугольник.Есть ли способ установить выбранный радиус угла состояния или что-то вдоль этих линий?Мой единственный другой вариант, если не будет, это создать фон PNG, который идеально подходит для скругленного прямоугольника.

Спасибо.

1 Ответ

1 голос
/ 27 ноября 2011

Я бы установил selectionStyle ячейки в UITableViewCellSelectionStyleNone, это остановит синюю подсветку. Затем начните выполнять выборочную работу.

Вам нужно будет создать собственный подкласс UITalbeViewCell. Переопределить setSelected или, если это не сработает, пользователь распознает жесты или переопределит touchShegan и т. Д. Я делал это один раз, прежде чем я точно забыл, как, если у вас возникли проблемы, сообщите мне, и я плохо его посмотрю.

Когда вы обнаружите, что ячейка выбрана, возможно, создайте полупрозрачный оверлей в виде PNG и сделайте так, чтобы он отображался при выделении ячейки. Или уменьшите прозрачность фонового изображения или добавьте цветовую маску.

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