Скопируйте и вставьте текст в симулятор iOS
Это должно быть документировано где-то, но я не могу его найти.
В моем приложении с использованием симулятора iPad есть текстовое поле, в которое я хочу, чтобы пользователь вставлял текст. В реальном мире пользователь скопирует текст с адреса Safari в текстовое поле. Но я пытаюсь сделать это в симуляторе ios ipad, но только с частичными результатами.
После повторного запуска приложения я могу сразу вставить текст в текстовое поле с помощью меню Mac Edit|Paste Text
или с помощью Shift-Command-V (но не с помощью только Edit|Paste
, но это Ok). Потребность в Сдвиге раздражает, но я могу жить с ним.
Но если я попытаюсь скопировать другой URL на Mac, а затем снова, Edit|Paste Text
или даже использовать пузырь Paste
на симуляторе, я не получу новый текст, а оригинальный текст.
Это обычное дело? Является ли это особенностью симулятора, что он не подключен в реальном времени к буферу на главном компьютере?
Ответы
Ответ 1
Соблюдайте осторожность, чтобы избежать объединения буфера обмена с помощью буфера обмена симулятора. Они не одинаковы.
Симулятор имитирует iOS-устройство с собственным буфером iOS, который приложения, запущенные на этом устройстве (симуляторе), используют с помощью элементов пользовательского интерфейса pup-up select-all/copy/paste для iOS.
Полностью отделяется от этого: у вашего mac есть собственный буфер обмена и контент. Программа Simulator, запущенная на вашем mac, предоставляет пункт меню "Редактирование" > "Вставить текст". Программа реализует этот пункт меню, обращаясь к вашему буферу макроса и вводит текст в симулятор, как если бы пользователь использовал клавиатуру. Буфер обмена iOS не доступен и не затрагивается функциями меню "Редактирование приложения".
Обновление:. С Xcode 6 вам нужно выбрать пункт меню Edit > Paste
в iOS Simulator (это передает данные между буфером обмена Mac и буфером обмена iOS), затем нажмите поле в симуляторе и коснитесь пузырька "Вставить".
В вашем вопросе вы не указываете, с какого "Safari" вы копируете URL-адрес. Это может быть приложение сафари Mac или приложение для сафариста симулятора. Выполнение копии из программы сафари Mac отправляется в буфер обмена Mac, причем копия из приложения Safari переходит в буфер обмена iOS внутри симулятора.
Я думаю, что ваши проблемы возникают из-за путаницы двух, думая, что один буфер обмена все делится.
Ответ 2
Я обнаружил, что даже при установленном значке "Правка"> "Автоматически синхронизировать монтажный картон" эта функция не работает.
Однако, просто сняв галочку, а затем снова включив эту опцию, исправили эту функцию!
Надеюсь, это работает для кого-то.
Ответ 3
Скопируйте текст на mac, затем щелкните текстовое поле в симуляторе и нажмите
Команда Shift V
Ответ 4
Что сработало для меня, так это.
1) скопировать текст с Mac
2) В симуляторе сделайте edit- > paste или Command V (я думаю, что это копирует текст из буфера обмена в буфер обмена iOS Simulator).
3) Выделите текстовое поле в симуляторе, а затем выполните команду + Shift + V.
Ответ 5
Пожалуйста, выберите опцию "Автоматически синхронизировать монтажную панель" в опции редактирования Simulator.
![enter image description here]()
Ответ 6
Я обновил до OS X 10.13.6 и XCode 10.1 и есть добавленное меню в edit
![]()
нажмите кнопку " get pasteboard
после чего вы сможете вставить с помощью всплывающей подсказки в симуляторе
Ответ 7
Xcode 10. 0+:
Выключение и последующая повторная автоматическая синхронизация Pasteboard решили проблему.
Возможно, вам придется сделать это несколько раз. Иногда требуется некоторое время, чтобы вызвать его по какой-то причине.
(Правка → Автоматическая синхронизация картона)
Ответ 8
Иногда очень сложно печатать длинные URL-адреса в симуляторе iOS. Должен быть какой-то способ скопировать URL из Max OS в текстовое поле iOS.
Вот как вы можете это сделать:
- Скопируйте текст с Mac
- Откройте симулятор и нажмите текстовое поле, в которое вы хотите вставить
текст
- Теперь в меню Simulator нажмите
Edit
→ Paste Text
и что он. Ваш текст из буфера копирования Mac OS теперь должен находиться в текстовом поле симулятора iOS.
Ответ 9
Три шага: (Ключевым моментом является то, что меню справки "Вставить" сохраняется, когда вы используете "⌘ + V" .)
- убедитесь, что вы выбрали точку, которую хотите пропустить в симуляторе, и editMenu с "Вставить" отображается.
- используйте клавиатуру на mac, " ⌘ + V", чтобы вставить текст в буфер обмена имитатора.
- нажмите "Вставить" на editMenu, который показан выше, чтобы вставить текст в текстовый экран симулятора.
![введите описание изображения здесь]()
Ответ 10
В новом эмуляторе у меня нет опции "вставить", и синхронизация не работает для симулятора. Похоже, что в симуляторе вы ДОЛЖНЫ скопировать что-то во внутренний буфер обмена, прежде чем синхронизация действительно сработает.
Ответ 11
Подобная вещь произошла со мной, и я нашел странный обходной путь, он может помочь любому, кто может столкнуться с той же проблемой. Попробуйте выполнить следующие действия:
- Отключите, а затем снова включите опцию
Automatically Sync Pasteboard
, которая находится в меню Edit
на Симуляторе
- Скопируйте нужный текст с вашего Mac
- Вставьте текст снова на свой Mac в текстовом редакторе, таком как Atom, или даже в адресной строке браузера
- .Выделите весь текст
Cmd+A
, а затем вырезайте/копируйте Cmd+X
/Cmd+C
- Теперь вы должны быть в состоянии вставить текст на симуляторе
Ответ 12
Это работает для меня. В версии 8.0.3 Safari и симуляторе IOS версии 8.1
- Копировать текст из Safari - выделите текст, затем cmd-v или Edit > Copy.
- В Ios Simulator нажмите "Редактирование" > "Вставить".
- В текстовом поле или текстовом элементе щелкните правой кнопкой мыши и выберите "Вставить".
Ответ 13
Это то, что я нашел.
- Скопировать текст с mac.
- В симуляторе откройте сафари и выделите адресную строку, щелкнув по нему.
- Нажмите Cmd + V
- Нажмите один раз на адресной строке.
- Появится выпадающая паста.
- Нажмите на пасту.
Shift + Cmd + V отлично работает.
Ответ 14
V + V: когда симулятор iOS находится впереди, скопируйте содержимое буфера обмена OS X в iOS, но не вставляйте его. Опять же, это работает как для текста, так и для изображений.
Так что вам нужно сделать следующее:
1. Скопируйте текст в любом месте вашего MacOS, кроме симулятора iOS.
2. в симуляторе iOS нажмите ⌘ + V, скопируйте текст из буфера обмена macOS в клипборд симулятора iOS.
3. в симуляторе iOS, TextField или TextView нажмите → Редактировать → Вставить.
Ответ 15
иногда вам просто нужно выбрать Оборудование → сбросить содержимое и настройки в меню симулятора. тогда все работает автоматически так же просто и прозрачно, как работа в MacOS с другими приложениями