Размер пользовательского выбора UITableView - PullRequest
0 голосов
/ 25 сентября 2019

Я пытаюсь получить похожий UITableView вариант выбора, как показано на «Ячейке предстоящей» ниже.Я достигаю закругленных углов, но не уверен, как заставить BKG не быть 100% шириной tableView.Текущий код, который у меня есть:

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: "folderCell", for: indexPath) as! FolderTableViewCell
    cell.layer.cornerRadius = 8
    return cell
}

РЕДАКТИРОВАТЬ: Все приведенные ниже решения по-прежнему не решают эту проблему ... 26/9/19

enter image description here

Ответы [ 4 ]

0 голосов
/ 25 сентября 2019

Придайте ясный цвет табличному виду.и оставьте начальный и конечный интервал для просмотра таблицы из суперпредставления.Придайте цвет фона SuperView.Простой взлом, чтобы сэкономить ваше время

0 голосов
/ 25 сентября 2019

Добавить фоновый вид внутри UITableView ячейки, подобной этой:

enter image description here

UITableViewCell

class FolderTableViewCell: UITableViewCell {

    @IBOutlet private weak var selectedView: UIView!

    override func setSelected(_ selected: Bool, animated: Bool) {
        super.setSelected(selected, animated: animated)
        selectedView.backgroundColor = selected ? UIColor.red : UIColor.clear // change selected color here
    }

}
0 голосов
/ 25 сентября 2019

Добавьте дополнительный UIView к вашей FolderTableViewCell с вашим выбором размера и цвета для выделения, а затем сделайте его скрытым по умолчанию, сделайте его видимым в didSelectRowAtIndexPath и скрытым в didDeselectRowAtIndexPath

0 голосов
/ 25 сентября 2019

Вам необходимо добавить представление в contentView с его шириной, скажем, 90% ячейки, а затем изменить его фон при выделении / снятии выделения внутри cellForRowAt

cell.someView.backgroundColor = indexPath.row == selectedRow ? UIColor.blue : UIColor.green

Где

var selectedRow:Int?

Внутри didSelectRowAt

selectedRow = indexPath.row
tableView.reloadData()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...