2014-10-14 4 views
1

Прежде всего, большое вам спасибо за то, что нашли время, чтобы помочь мне.Как щелкнуть по слову и открыть всплывающее окно в iOS

Я довольно новичок в разработке iOS и нуждаюсь в некоторой помощи по вводу текста в UITextField, а затем можно нажать слово, а затем открыть всплывающее окно. Я буду иметь всплывающий экран назначает то, что цвет выделения текста есть и я знаю, как идти об этом, что использование

@property(nonatomic, retain) UIColor *highlightedTextColor 

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

Отличный день! :)

+0

Как вы показываете «слова», которые могут быть затронуты? В списке? Сетка? – Acey

+0

Я хотел бы, чтобы пользователь мог вводить свой собственный текст в UITextField, а затем иметь возможность нажимать на них. Если есть лучший способ, о котором вы знаете, я открыт для предложений. –

+0

Я имею в виду ... Кажется, вы хотите одновременно отображать несколько слов, правильно? Как вы планируете выкладывать все слова? – Acey

ответ

0

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

  1. Создайте UICollectionView с макетом, который будет проходить через линии, но всегда выравнивает элементы слева. Вы можете получить подкласс UICollectionViewFlowLayout, чтобы сделать это с небольшой работой. Это должно быть в стиле, чтобы приблизить внешний вид UITextField.
  2. Создайте скрытый UITextField.
  3. Когда пользователь переходит на ввод ввода, сделайте скрытый textField первым ответчиком. Это всего лишь контейнер для их ввода.
  4. Как пользовательский тип, проанализируйте текст в UITextField в текстовые компоненты, разделив строку на символ ''. Каждое слово будет представлено в UICollectionView как одна ячейка.
  5. Внедрение метода UICollectionViewDelegate для выбора ячейки. Когда ячейка выбрана, отобразите ваш выбор цвета, установите некоторую информацию о цвете, чтобы позже воссоздать ячейку с тем же цветом.

При таком подходе у вас не будет типичных инструментов редактирования, таких как нарезание слов, перемещение курсора и т. Д. Однако у вас будет удаление.

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