Создание динамического добавления кнопки Swift - PullRequest
0 голосов
/ 24 ноября 2018

Как мне создать кнопку, которая работает аналогично кнопке «Добавить телефон» в приложении контактов?Как показано ниже, чтобы воспроизвести его, с правой стороны у меня есть кнопка с типом Добавить контакт (отображается в виде плюса в кружке), а справа - метка.Затем я собрал их вместе в виде стека.

Как в приложении контактов есть одна большая кнопка (панель), которая содержит изображение и текст?При нажатии на кнопку (в приложении контактов) она выделяет всю панель.Это заставляет меня поверить, что это можно было сделать, используя UITableView.

Какой лучший способ создать аналогичную кнопку (панель), как они это сделали?Было бы легче воспроизвести, если бы вместо этого я использовал UITableView?

enter image description here enter image description here

Ответы [ 2 ]

0 голосов
/ 24 ноября 2018

вам не следует использовать стек просмотра, чтобы обернуть и кнопку, и правый текст. Потому что вам также нужно нажать на событие. И представление стека, не дающее события касания.Назначение UIControl в качестве класса в Inspecter (не UIView). Затем перетащите Controll из окна «Просмотр» в файл класса и выберите событие TouchUPinside. отключите взаимодействие пользователя как с кнопкой, так и с меткой, в противном случае событие не будет запущено.

Assign UIControll to UIView

Create TouchUpinsde event of UIControl

, а затем добавьте UIControll и другие компоненты выше к tableView или Vertical StackView.

0 голосов
/ 24 ноября 2018

Это определенно tableView.

Они либо ограничивали верхнюю часть кнопки к низу пустого tableView, либо делали это как целое tableView, и каждый раз, когда вы didSelectRowAt вставляли строку в известную позицию.

Предположим, что они либо используют метод делегата DataSource для вставки строк, либо пользовательскую функцию, заключенную в tableView.beginUpdates () и tableView.endUpdates () (перезагружает таблицу с анимацией)

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