2012-04-06 1 views
2

В настоящее время я работаю над iPad-приложением, мой клиент хочет добавить функциональные клавиши, как в обычной клавиатуре на клавиатуре, которую я сделал. Проблема в том, что он хочет использовать клавишу «Fn» в системной клавиатуре iPad, которая отображает функциональные клавиши при нажатии.Добавление ключа в клавиатуру IPad

Возможно ли без перерыва в тюрьме? как он прислал мне несколько фото, где это делается .. но я много искал в googled, но я не мог найти какой-либо документ Apple, в котором говорится: «Приложение будет отклонено, если оно будет взаимодействовать с системной клавиатурой или что-то в этом роде.

Любые указатели о том, как сделать добавить ключ Fn в клавиатуре или что-то, я могу показать, чтобы убедить его, с очень ценна ..

EDIT: решение добавить, но только если вы хотите, чтобы узнать, как вы можете это сделать. . НО ЕГО НЕ ЧТО нУЖНО СДЕЛАТЬ дЛЯ РЕАЛЬНОГО APP

Follow this link, чтобы найти КЛАВИАТУРУ слой IPad Примечание: вы должны проверить UIPeripheralHostView на iPad, UIKeyboard работает для iPhone.

После этого окончательный, если состояние, когда вы находите UIPeripheralHostView добавить еще один цикл для его подпанелей и проверить условие UIKeyboardAutomatic

После этого делается .. вам нужно сделать рекурсивный вызов как IOS сделать для делать HitTest CGPoint может быть любым в зависимости от того, где вы хотите добавить ключ, в моем случае это как CGPoint (50,290) для нижней правой клавиши.

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

Окончательное возвращение условие, если ваш вид имеет класс UIKBKeyView, и он может ответить на ваш пункт hitTest. У вас есть ваш ключевой вид и его родитель .. теперь добавьте все, что вы хотите добавить ...

ответ

1

Приложение Wolfram Alpha сделало что-то подобное. Когда клавиатура показана, они добавляют их собственный вид прямо над ним. Они используют -inputAccessoryView. См. https://developer.apple.com/library/ios/#documentation/uikit/reference/UITextView_Class/Reference/UITextView.html для больше информации.

Вы также можете полностью заменить клавиатуру -inputView.

+0

Мне нужна конкретная ссылка, в которой говорится, что это невозможно без джейлбрейка .. – Kamal

+0

Wolfram Alpha не нуждается в джейлбрейке, он находится в App Store. Если вы хотите доказать, что вы не можете изменить часть Apple на клавиатуре, я не знаю, где бы я ее нашел, но я никогда не видел ни одного приложения, которое модифицировало клавиатуру. Я просто не думаю, что API существует. – StilesCrisis

+0

Добавлены ссылки на документацию для '-inputAccessoryView'. – StilesCrisis