Как сделать Tag/Label/Text View?

Я хочу сделать что-то вроде этого представления (я даже не знаю, как его назвать), но я не знаю, с чего начать, чтобы сделать это наиболее эффективным (с наименьшим количеством кода) способом.

Я хочу сделать этот тег / ярлык / текст с той же функциональностью, что и Apple Mail. У Facebook Messenger есть почти то же самое. Есть ли какой-нибудь официальный высокоуровневый публичный API для этого? Где лучше всего начать? TextKit? UITextInput? Можете ли вы дать мне хотя бы абстрактный алгоритм или указать на какое-нибудь вдохновляющее место?

введите описание изображения здесь

4 ответа

Вы можете сделать это, если текст будет UILable:

  1. Добавьте каркас QuartsCore в свой проект.

  2. В верхней части файла.m вашего View Controller поместите: #import <QuartzCore/QuartzCore.h>

  3. Добавьте этот код в метод viewDidLoad:

    self.myLabel.layer.backgroundColor = [UIColor blueColor].cgColor; //set the background color
    self.myLabel.layer.cornerRadius = 10 //set the corner radius
    

Там некоторые компоненты, которые вы можете сделать это:

AMTagListView

HKKTagWriteView

Вы должны нарисовать текст самостоятельно. Вот пример, аналогичный тому, что вы ищете.

SMTagField

введите описание изображения здесь

Вместо использования структуры дополнения я рекомендую UICollectionView для реализации тегов. Это меньше кода, меньше накладных расходов и прост в реализации.

Перейдите по этой ссылке для реализации:

https://codentrick.com/create-a-tag-flow-layout-with-uicollectionview/

Вот как это выглядит. Обратите внимание, что он тоже гибкий, вы можете интегрировать в соответствии с вашей логикой.

Надеюсь, что это поможет вам

Другие вопросы по тегам