Не можете ввести текстове поле в тренажері iphone за допомогою клавіатури Mac?


98

Я працюю над базовим додатком для iOS, який підтримує як портретний, так і пейзажний режими. Коли клавіатура імітатора iPhone відкрита в пейзажному режимі, і я перемикаю додаток на портретний режим, я не можу нічого вводити в будь-яке текстове поле за допомогою фізичної клавіатури Mac.

Хтось раніше це відчував? Це відома помилка?



Чи можете ви надати більше інформації, наприклад про версію XCode та iOS SDK, якими ви користуєтесь, будь ласка?
brimble2010

1
У мене точно таке питання. Я також інколи отримую тривалий серйозний недійсний попередження про контекст у консолі.
білобатум

Відповіді:


80

Знайшов чудове рішення, яке працювало на мене.
Відкрийте тренажер, потім знайдіть меню Обладнання -> Клавіатура має три варіанти:

  1. iOS використовує такий же макет, як і OS X : ця опція вимикає клавіатуру Mac
  2. Підключення апаратної клавіатури : ця опція дозволяє клавіатурі Mac, але клавіатура не відображатиметься.
  3. Переключення клавіатури програмного забезпечення : ця опція дозволить вводити клавіатуру Mac, а також показувати iOS на екранній клавіатурі.

це спрацювало як у 2020 році ... Не вдалося набрати симулятор, після переходу на клавіатуру апаратного забезпечення воно працює
Juan

52

У Xcode 9 я зіткнувся з тією ж проблемою з симулятором iPhone 8+. Я зміг вирішити це так:

  1. Відкрити ~/Library/Preferences/com.apple.iphonesimulator.plistфайл
  2. Знайдіть проблемний ідентифікатор симулятора (показаний у вікні Пристрої та Симулятор )
  3. Встановити CaptureKeyboardInputзначенняYES
  4. Перезавантажте тренажер


2
Дякую. Це єдине, що працює для мене в Xcode 9. Спробував різні комбінації всередині апаратного меню безрезультатно. Пройшов і вручну додав його до всіх своїх сим. Не знищив і не відтворив сим ще, щоб побачити, чи це теж вирішило. Не перший раз яблуко накрутив сим, мабуть, теж не буде останнім. :)
StephenFeather

2
Ти заслужив медаль.
Олівер Пірмен

2
Це єдине виправлення, яке мені допомогло. Дякую!
gokeji

1
що відповідь, брато, тебе шапочки
Джейдіп

1
Так, це відповідь для мене. Велике спасибі
Вітало Бенісіо,

41

Перш ніж почати вводити текст (коли з’явиться екранна клавіатура), натисніть лише командну клавішу, а потім відпустіть її. Це повинно ввімкнути клавіатуру в тренажері.


1
Ця відповідь видно в пошуку проблеми Google. Молодці, Євгеній. Як ви це зрозуміли? Набагато краще, ніж інші «рішення», які я пробував.
Нутч

17
Введення CMD + Shift + K двічі під час появи клавіатури вирішило проблему для мене.
Chanchal Raj

4
Не працює в тренажері з Xcode 9. Нічого не відбувається.
Хосе Рамірес

Працював для мене колись. Потім клавіатура перестала працювати для мене знову не надто довго, і тепер це не працює. (Simulator v10.0, Xcode 9.2)
Райан Х.

37

З меню Симулятор >> Обладнання >> Клавіатура >> Підключення апаратної клавіатури

АБО

просто натисніть ⌘ + ⌂ + K


це працювало для мене, але тільки після того, як я перезапустив тренажер
marcomoreira92,

25

Запустіть iOS Simulator та увімкніть Hardware > Keyboard > Connect Hardware Keyboard.

(Можливо, ви випадково відключили його, натиснувши CMD + SHIFT + K- той самий ярлик як Clean у Xcode)


18

На Симуляторі спробуйте змінити пристрій. Потім знову запустіть додаток на оригінальному пристрої. Це працювало для мене.

Якщо перший крок не працює, зніміть прапорець: iOS Використовує таку ж розкладку клавіатури, що і OS X, а потім змінить пристрій.

Я зрозумів це, роблячи випадкові речі, поки це не спрацювало. Фіксація мавпи.


1
Я не повинен був робити перший крок, але другий крок спрацював. Дякую!
rob5408

Мені подобається, що майже кожна відповідь на це питання зовсім інша. Дурний тренажер iOS. Ви працювали на мене - я його випадковим чином подав :)
Дарраг Енрайт

Це працювало для мене, за винятком того, що мені не потрібно було піднімати інший тренажер. Я просто закрив вікно для тренажера (у вас зараз можна встановити кілька вікон симулятора, а також закрити їх окремо), а потім повторно запустив додаток із Xcode, щоб повернути його. Однозначно щось лускає в тренажері. Це вже давно проблематично :(
Райан Х.

17

Жодна з цих пропозицій не працювала для мене. Я закрив додаток iOS Simulator і перезапустив його. Це зафіксувало це для мене.


Гуфі. Працювали для мене.
KeithTheBiped

Якщо ви спробували переключити клавіатуру на клавішу shift-command-k, спробуйте це далі.
KeithTheBiped

@KeithTheBiped я спробував shift-command-k, не пощастивши перед тим, як перезапустити ios-симулятор.
Бухарі

14

я думаю, що це тільки через проблему, що ви не вибрали опцію "підключити апаратну клавіатуру на панелі меню симулятора під назвою" Обладнання "

Будь ласка, виконайте кроки

Перейти: Обладнання -> Клавіатура -> Підключення апаратної клавіатури

Сподіваюся, це допоможе вам у вирішенні проблеми, дякую.введіть тут опис зображення


11

Я бачу ту саму проблему. Я вважаю, що проблема пов'язана з тим, що командний ключ "застряг" у тренажері, якщо ви повертаєте пристрій у тренажері за допомогою скорочень Command-LeftArrow та Command-RightArrow.

Поки ми чекаємо, коли Apple виправить, один із способів цього - повернути пристрій, вибравши опцію меню замість комбінації клавіш. Це обертає пристрій і, здається, залишає клавіатуру в робочому стані.



5

Це не проблема, просто зробіть ці прості кроки.

  1. Відкрийте тренажер

  2. Переходимо до вершини, і ви бачите опцію обладнання, натисніть на це.

  3. При натисканні на "Обладнання" з'являється деяка опція, і одним із варіантів є "Клавіатура".

  4. Клацніть на варіант клавіатури, і ви побачите три варіанти.

  5. Якщо ви хочете скористатися клавіатурою Mac, просто виберіть другий варіант Підключення апаратної клавіатури.

  6. Якщо ви хочете використовувати клавіатуру мобільного торкання, виберіть третій варіант.

  7. 1-й варіант - для тих, хто вибирає клавіатуру через код.

Насолоджуйтесь, що вся робота.


1
Якщо це не працює. Вбийте (закрийте та запустіть) тренажер і повторіть ці кроки ще раз. Сподіваюся, це спрацює.
ФАРАЗ

5

Щойно я встановив нову версію Xcode (5.0), і клавіатура в iOS Simulator не працювала при першому запуску. Допомогло лише перезапуск симулятора.


4

Для мене виберіть Симулятор, Виберіть апаратне забезпечення -> Клавіатура -> Підключення апаратної клавіатури.

Це працювало для мене.


3

Я просто спробував те, що ви сказали, і це правда, це не спрацює, якщо я переміщу його в пейзаж, а потім знову в портрет. У ньому немає ніякої логіки, оскільки моя програма навіть не змінюється, і вона добре працює в пристрої, тому це помилка в тренажері.

Ви можете повідомити про це Apple, використовуючи це:

https://developer.apple.com/bug-reporting/


2

Рішення, яке справді працює для мене, було видалено тренажер і створити новий. Я думаю, що ця помилка трапляється, коли всі ярлики не працюють від вашої клавіатури до тренажера.



2

У мене виникли проблеми з імітатором iPhone6, я змінив його на iPhone7 . На iPhone7 я можу продовжити свою роботу.


1

Якщо ваша клавіатура Mac все ще відключена після правильності всіх параметрів та налаштувань, одна з причин - повернення пристрою.

Якщо ви CMD+ або повертати пристрій рано, коли тренажер запускається, клавіатура Mac абсолютно не працюватиме, незважаючи ні на що; зміна налаштувань меню нічого не робить! Це може допомогти використовувати клавіатуру Mac для введення всередині пристрою, перш ніж повертати пристрій.

Іноді допомагає вимкнути "Надіслати ярлики меню на пристрій" та перезапустити симулятор. Я оновлю, якщо отримаю надійну, відтворювану поведінку.

Я вважаю, що клавіатура Mac працює близько половини часу, коли я запускаю і виходжу з Simulator. 50% не погано після всіх цих років !?



1

Просто використовуйте CMD + SHIFT + K, і клавіатура активується самостійно.


0

З цією проблемою я стикався кожного разу, коли повертав тренажер. Дотримуючись пропозицій щодо зміни апаратних параметрів, мені не підходить, ні перезавантажте iOS Simulator.

Я виявив хитрість, що після обертання клацніть область редагування, змушує клавіатуру Mac працювати.


0

Зробивши так багато продуктів, пройшов лише перезапуск моєї машини та включення нижче.

Увімкнення цього в тренажері: Обладнання -> Клавіатура -> Підключення апаратної клавіатури


0

Для версії 10.0 (SimulatorApp-851.2 CoreSimulator-518.19) з Xcode 9.3 для мене нічого не працювало. Я скидаю тренажер за допомогою Обладнання -> Стерти весь вміст і налаштування -> Стерти. Очистили проект і запустили на тренажері. З'єднання клавіатури повернулося назад.


0

Я зіткнувся з цією проблемою після того, як я видалив Main.storyboardі створив головне вікно в коді. Повернення до використання Main.storyboardвиправленого для мене.


0

Для мене це працювало на iPhone 8+ симулятор iOS 11.2: 1. Перейдіть до Меню -> Обладнання -> Стерти весь вміст та налаштування. 2. Видаліть отримані дані з xcode. Xcode -> Preferences -> Locations -> Клацніть стрілку праворуч ліворуч від кнопки "Advanced".


0

для мене на відкритому симуляторі в меню вашого комп'ютера натисніть Апаратне забезпечення та перейдіть до опції клавіатури та виберіть перемикач клавіатури програмного забезпечення. як показано


0

Існує бібліотека для редагування файлів plist під назвою plistlib. Ось мій код:

    import plistlib

    file_name = ('path/to/com.apple.iphonesimulator.plist')
    try:
        p = plistlib.readPlist(file_name)
        p["ConnectHardwareKeyboard"] = "NO"
        plistlib.writePlist(p, file_name)
    except:
        print("Failure")

Це читає файл плісту, змінює ConnectHardwareKeyboardзначення, Noа потім записує новий файл у те саме місце. Це працює для мене, але дайте мені знати, чи є кращий спосіб зробити це. Я все ще нова в кодуванні.


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.