2012-05-01 3 views
0

Можно ли изменить изображение управления редактированием для выбора нескольких строк для UITableViewCell. Если это возможно с помощью любой функции UITableViewCell по умолчанию, или мы должны самостоятельно ее настроить, если да, то кто-нибудь может дать мне ссылку на нее.Изменить изображение управления редактированием для UITableViewCell

Заранее спасибо.

ответ

0

UITableViewCell's propertyType свойство имеет возможное значение UITableViewCellAccessoryCheckmark, в котором будет отображаться галочка с правой стороны ячейки, полезная для указания выбранного/отмененного статуса.

Другие варианты: UITableViewCellAccessoryDisclosureIndicator, который является прямым указателем на шеврон, и UITableViewCellAccessoryDetailDisclosureButton, который делает маленькую синюю кнопку, как в журнале последних вызовов телефона.

Так после настройки ячейки,

cell.textLabel.text = @"Selected"; 
cell.accessoryType = UITableViewCellAccessoryCheckmark; 
return cell; 
4

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

  1. Создайте подкласс UITableViewCell.
  2. Переопределить initWithCoder :. В этом методе добавьте UIView в self.backgroundView.
  3. Override willTransitionToState :. Вам не нужно ничего добавлять, но добавление этого переопределения метода не позволяет ячейке добавлять элементы управления системой.
  4. Добавьте изображение, которое вы хотите в качестве элемента управления редактирования, в качестве дополнительного представления для self.backgroundView.

Теперь, когда таблица переходит в режим редактирования, а ячейки сдвигают содержимое вправо, вы увидите изображение, добавленное в фоновый вид. Побочным эффектом этого является то, что он не получит прикосновения, когда вы коснетесь своего нового изображения. Для моего случая я установил tableView.allowSelectionDuringEditing в YES и обработал выбор в tableView: didSelectRowAtIndexPath: в моем контроллере представления таблицы.

Смежные вопросы