Копирование из Mac OS X не копируется в iPhone Simulator


90

В моем приложении для iPhone у меня есть много ASCII-артов, которые мне нужно вставить в базу данных.

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

Здесь буфер обмена симулятора однажды вставляет искусство правильно, но когда я копирую другое искусство, он также вставляет предыдущее искусство в текстовое представление.

Как решить эту проблему? Есть ли способ обойти это или какой-либо лучший подход?

Ответы:


227

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

Результаты были похожи на те, что вы описываете: при копировании и вставке иногда вставлялось то же значение, которое я скопировал раньше, но не то, что я только что скопировал в буфер обмена.

Я наконец понял, что у симулятора есть собственный буфер обмена, отдельный от основного буфера обмена OS X.

Для вставки в приложение из буфера обмена симулятора используются сенсорные команды копирования и вставки.

Вы можете использовать стандартные сочетания клавиш для копирования и вставки OS X (Command-X, C, V) для вставки из системного буфера обмена в буфер обмена симулятора.

Итак, чтобы скопировать и вставить из Chrome (например), вы выбираете текст в Chrome, Command-C для копирования. Затем переключитесь на симулятор, Command-V, чтобы вставить в буфер обмена симулятора. Затем в своем приложении вы имитируете прикосновение к текстовому полю, чтобы вызвать опцию вставки, а затем имитируете прикосновение к кнопке вставки, чтобы вставить содержимое буфера обмена симулятора в приложение.

Параметры меню делают то же самое, что и сочетания клавиш - копируют / вставляют между системным буфером обмена и клавиатурой симулятора.

Теперь, когда я понял это, мне это нравится намного больше, чем если бы буфер обмена симулятора был автоматически привязан к буферу обмена OS X.


4
Потрясающе! Мне всегда было интересно, почему иногда это работает, а иногда нет! Так рада, что вы это пролили!
Клаас

3
Это, наверное, самый полезный ответ, который я нашел на этом сайте
GangstaGraham

2
Меня всегда смущает копирование и вставка между симулятором и MAC, ваш ответ потрясающий! Спасибо огромное.
flypig 07

3
Спасибо за ответ и за то, что указали на худшее решение, которое когда-либо было принято. (Выберите опцию «Вставить» в раскрывающемся меню Симулятора iOS ... ничего не происходит ... затем снова сделайте «Вставить»? Хотя в этом есть некоторый концептуальный смысл, это просто безумие предполагать, что кто-то может понять это выходит.)
Грег Малетик

Отличное решение! Отлично работает.
AlKozin 04

33

Из Xcode 9.0 или выше:

  • Открытый симулятор

  • Нажмите "Изменить" в верхнем меню.

  • Включить -> «Автоматически синхронизировать монтажный стол»

  • Если он уже включен, отключите его и снова включите.

  • Нажмите и удерживайте, чтобы вставить текст, т.е. скопировать

Ниже Xcode 9.0

  1. Копировать текст из любого места
  2. Вставьте в симулятор командой (command + v), ничего не покажет
  3. Затем нажмите (command + shift + v)

меня устраивает


2
супер полезный совет!
Роберт

2
"Если уже включен, отключите и снова включите". был ключом!
rsc

19
  • + C- Копирует содержимое буфера обмена iOS в OS X. Это работает как для текста, так и для изображений.
  • + + C- Копирует выделенный текст (или что-то еще, что отвечает на селектор copy: в вашем приложении) в буфер обмена iOS. Этого нет в меню.
  • + + C- Копирует снимок экрана приложения iOS (без хрома симулятора) в буфер обмена OS X ( вместо этого используйте +, Sчтобы сохранить его в файл на рабочем столе).
  • + V- Копирует содержимое буфера обмена OS X в iOS, но не вставляет его. Опять же, это работает как для текста, так и для изображений.
  • + + V- Вставляет буфер обмена OS X в приложение iOS, но оставляет буфер обмена без изменений. Это не работает с изображениями.

Источник: http://olemoritz.net/copypaste-in-the-ios-simulator.html


17

В Xcode 9 или выше: 1. Активный симулятор 2. Отметьте меню «Правка -> Автоматически синхронизировать монтажный стол» 3. Наслаждайтесь :)


2

Это странная проблема на моем компьютере. На моем Mac установлен macOs Sierra 10.xx ++ . Что я делаю,

  1. Скопируйте содержимое со своего Mac с помощью command + cклавиатуры или.

  2. Теперь нажмите command + vв том месте, куда вы хотите вставить контент.

  3. Теперь вставьте в симулятор, используя command + shift + v

Работает хорошо. Подтвержденный ответ.!


1

Проверить textсвойство UITextView. Просто загрузите свой текстовый рисунок в файл NSStringи установите эту строку как textсвойство TextView.

http://developer.apple.com/library/ios/#documentation/uikit/reference/UITextView_Class/Reference/UITextView.html%23//apple_ref/occ/instp/UITextView/text


Без проблем, в любое время, я просто рада, что ты получил ответ.
Ричард Дж. Росс III

0

Вы можете скопировать контент с Mac с помощью ⌘ + ⇧ + C и вставить в URL-адрес браузера с помощью ⌘ + V.

У меня это работает.


0

В качестве последнего шага попробуйте перезапустить симулятор Xcode и iOS.
Menu -> Hardware -> Restart


-5

Получил решение:

Из меню iPhone Simulator.

Третий вариант: восстановить содержимое и настройки.

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

У меня это работает.


3
Это не ответ на актуальный вопрос.
smyk
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.