Это должно быть где-то задокументировано, но я не могу его найти.
В моем приложении, использующем симулятор iPad, есть текстовое поле, в которое я хочу, чтобы пользователь вставил текст. В реальном мире пользователь скопирует текст с адреса Safari в текстовое поле. Но я пытаюсь сделать это в симуляторе ios ipad, но с частичными результатами.
После перезапуска приложения я могу сразу вставить текст в текстовое поле с помощью Edit|Paste Text
меню Mac или Shift-Command-V (но не просто Edit|Paste
, но это нормально). Необходимость в Shift меня раздражает, но я могу с этим жить.
Но затем, если я попытаюсь скопировать другой URL-адрес на Mac, а затем снова Edit|Paste Text
или даже использовать Paste
пузырек на симуляторе, я получу не новый текст, а исходный текст.
Это обычное дело? Это особенность симулятора в том, что он не подключен в реальном времени к буферу обмена на главном компьютере?
Ответы:
Будьте осторожны, чтобы не смешивать буфер обмена Mac с буфером обмена симулятора. Они не одинаковы.
Симулятор имитирует устройство iOS со своим собственным буфером обмена iOS, который приложения, работающие на этом устройстве (симуляторе), используют через приложение iOS для выбора всех / копирования / вставки элементов пользовательского интерфейса.
Совершенно отдельно от этого: у вашего Mac есть собственный буфер обмена и контент. Программа Simulator, запущенная на вашем Mac, предоставляет пункт меню Edit> Paste Text. Программа реализует этот пункт меню, обращаясь к буферу обмена вашего Mac, и вводит текст в симулятор, как если бы пользователь использовал клавиатуру. К буферу обмена iOS не обращаются и не влияют функции меню «Правка» приложения Simulator.
Обновление: начиная с Xcode 6, вам нужно выбрать
Edit > Paste
пункт меню в iOS Simulator (это передает данные между буфером обмена Mac и буфером обмена iOS), затем коснитесь поля в симуляторе и коснитесь пузыря «Вставить».В своем вопросе вы не указываете, из какого «Safari» вы копируете URL. Это может быть приложение для Mac Safari или приложение Safari для симулятора . Копирование из программы Safari для Mac попадает в буфер обмена Mac, а копирование из приложения Safari - в буфер обмена iOS внутри симулятора.
Я думаю, что ваши проблемы возникают из-за того, что вы путаете их, думая, что есть один буфер обмена, которым все пользуются.
источник
Я обнаружил, что даже при установленном флажке «Правка»> «Автоматически синхронизировать монтажный стол» эта функция не работает.
Однако простое снятие отметки и повторная установка этой опции исправили эту функцию!
Надеюсь, это сработает для кого-то.
источник
Скопируйте текст на Mac, затем щелкните текстовое поле в симуляторе и нажмите
Команда Shift V
источник
Пожалуйста, выберите опцию «Автоматически синхронизировать монтажный стол» в опции редактирования симулятора.
источник
Что сработало для меня, так это.
1) копировать текст с Mac
2) В симуляторе выполните edit-> paste или Command V (я думаю, это копирует текст из буфера обмена Mac в буфер обмена iOS Simulator).
3) Выделите текстовое поле в симуляторе, а затем выполните команду + Shift + V.
источник
Xcode 10.0+ :
Отключение и повторное включение автоматической синхронизации монтажного стола решило проблему.
Возможно, вам придется проделать это несколько раз. Иногда по какой-то причине для его запуска требуется время.
(Правка -> Автоматическая синхронизация монтажного стола)
источник
Я обновился до os x 10.13.6 и xcode 10.1, и в
edit
щелкните,
get pasteboard
тогда вы сможете вставить с помощью всплывающей подсказки в симулятореисточник
Send Pasteboard
, чтобы вставить симулятор.Get Pasteboard
сделал обратное действие, он поместил буфер обмена iOS в буфер обмена Mac.Подобная вещь произошла со мной, и я нашел странный обходной путь, он может помочь любому, кто может столкнуться с той же проблемой. Попробуйте выполнить следующие действия:
Automatically Sync Pasteboard
опцию, она находится вEdit
меню Симулятора.Cmd+A
а затем вырежьте / скопируйтеCmd+X
/Cmd+C
источник
Иногда очень сложно ввести длинные URL-адреса в симуляторе iOS. Должен быть способ скопировать URL-адрес из Max OS в текстовое поле iOS. Вот как это сделать:
Edit
->Paste Text
и это все. Ваш текст из буфера копирования Mac OS теперь должен быть в текстовом поле симулятора iOS.
источник
В новом эмуляторе у меня не было опции «вставить», и синхронизация для симулятора не работала. Похоже, что в симуляторе вы ДОЛЖНЫ скопировать что-то во внутренний буфер обмена, прежде чем синхронизация действительно сработает.
источник
Три шага: (Ключевой момент - убедиться, что меню справки «Вставить» остается видимым, когда вы используете «⌘ + V» .)
источник
иногда вам просто нужно выбрать Оборудование -> сбросить содержимое и настройки в меню симулятора. тогда все работает автоматически, так же просто и прозрачно, как работа в MacOS с другими приложениями
источник
Ни одно из этих решений не помогло мне. Я использую Simulator 11.4. И, попробовав каждый из них, я понял, что все, что мне нужно сделать, это скопировать что-то на моем Mac с помощью Command + C, а затем в текстовом поле симулятора просто удерживать щелчок мышью на дополнительную секунду или две, и меню вставки всплывал автоматически и отлично работал.
источник
У меня это работает. В Safari версии 8.0.3 и симуляторе ввода-вывода версии 8.1
источник
Вот что я нашел.
Shift + Cmd + V тоже отлично работает.
источник
⌘ + V: когда симулятор iOS находится впереди, скопируйте содержимое буфера обмена OS X в iOS, но не вставляйте его. Опять же, это работает как для текста, так и для изображений.
Итак, вам нужно сделать следующее:
1. скопировать текст в любое место в MacOS, кроме симулятора iOS.
2. в симуляторе iOS нажмите ⌘ + V, скопируйте текст из буфера обмена macOS в буфер симулятора iOS.
3. в симуляторе iOS щелкните TextField или TextView -> Изменить -> Вставить.
источник