Я собираюсь создать настраиваемую клавиатуру для своего приложения, а также внедрить расширение настраиваемой клавиатуры для улучшения функций моего приложения на уровне ввода.
Поэтому я хочу добавить "настраиваемый вид" поверх моей пользовательской клавиатуры в приложение. когда я набираю какое-то слово в это время, добавляю настраиваемый вид поверх настраиваемой клавиатуры, такой как gBoard, так как можно добавить настраиваемый вид и увеличить размер клавиатуры более чем на 216.
Пользовательская высота клавиатуры и добавление пользовательского вида поверх пользовательской клавиатуры в ios
comment
Думаю, я не правильно понял ваш вопрос. Это так? Пожалуйста, посмотрите на ответ и комментарий.
- person Nikhil Manapure   schedule 06.12.2016
Ответы (2)
вы должны поместить это ограничение высоты в viewWillAppear
CGFloat _expandedHeight = 500;
NSLayoutConstraint *_heightConstraint =
[NSLayoutConstraint constraintWithItem: self.view
attribute: NSLayoutAttributeHeight
relatedBy: NSLayoutRelationEqual
toItem: nil
attribute: NSLayoutAttributeNotAnAttribute
multiplier: 0.0
constant: _expandedHeight];
[self.view addConstraint: _heightConstraint];
ПРИМЕЧАНИЕ
В iOS 8.0 вы можете настроить высоту пользовательской клавиатуры в любое время после того, как ее основной вид первоначально отображается на экране.
person
Marat Ibragimov
schedule
06.12.2016
Я реализую пользовательское расширение клавиатуры, я не реализую его только в своем приложении. Поэтому не могли бы вы предоставить свой вклад, связанный с этим. Пожалуйста, проверьте мой вопрос, я обновил его.
- person Pritesh Raiyani; 06.12.2016
Я знаю, я имею в виду, что вам нужно реализовать viewWillAppear в вашем UIInputViewController вашей пользовательской клавиатуры, self.view на самом деле является вашим пользовательским представлением клавиатуры.
- person Marat Ibragimov; 06.12.2016
см. эту ссылку с рекомендациями:
- person Marat Ibragimov; 06.12.2016
developer.apple.com/library/content/documentation/ Общие/
- person Marat Ibragimov; 06.12.2016
вы можете сохранить ограничение на свойство внутри вашего UIInputViewController и использовать его для увеличения представления, как только они появятся при изменении константы ограничения
- person Marat Ibragimov; 06.12.2016
конечно, ваш пользовательский вид должен быть добавлен с верхними, ведущими, нижними, конечными ограничениями в основной вид, прежде чем вы сможете его изменить.
- person Marat Ibragimov; 06.12.2016
Это решение только для увеличения пользовательской высоты клавиатуры, а не для второго вопроса. если вы знаете, пожалуйста, мне тоже
- person Pritesh Raiyani; 07.12.2016
вам нужно добавить свой пользовательский вид в основной вид (self.view) с ограничениями на верх, ведущий, нижний и конечный, вы должны сделать это программно с помощью NSLayoutConstraint, после его добавления настраиваемый вид будет увеличиваться или уменьшаться в соответствии с основным ограничение по высоте
- person Marat Ibragimov; 07.12.2016
Добавление пользовательского представления поверх пользовательской клавиатуры можно выполнить так же, как вы делаете это в своем приложении. Чтобы увеличить высоту пользовательской клавиатуры более чем на 216, вам необходимо добавить ограничение по высоте к вашему inputView
в KeyboardViewController
. Это можно сделать следующим образом:
let constraintForHeight:NSLayoutConstraint = NSLayoutConstraint(item: self.inputView, attribute: NSLayoutAttribute.Height, relatedBy: NSLayoutRelation.Equal, toItem: nil, attribute: NSLayoutAttribute.NotAnAttribute, multiplier: 0, constant: height)
constraintForHeight.priority = UILayoutPriorityDefaultHigh
self.inputView.addConstraint(constraintForHeight)
Не стесняйтесь предлагать изменения, чтобы сделать это лучше. Пожалуйста, дайте мне знать, если есть какие-либо проблемы с реализацией
person
KrishnaCA
schedule
06.12.2016