Я работал на пользовательской клавиатуре iOS (в файле .xib), но мне не удалось изменить высоту в раскадровке. Есть ли способ изменить высоту клавиатуры в раскадровке или мне нужно найти способ сделать это программно?Как изменить высоту пользовательской клавиатуры iOS?
ответ
Вы хотите проверить этот сайт. Он предоставляет много информации! custom keyboard
Вот мое решение, как Apple Documentation Предлагает:
Вы можете регулировать высоту первичного просмотра пользовательской клавиатуры с помощью Auto Layout. По умолчанию пользовательская клавиатура имеет размер, соответствующий клавиатуре системы, в зависимости от размера экрана и ориентации устройства. Ширина пользовательской клавиатуры всегда устанавливается системой, чтобы она соответствовала текущей ширине экрана. Чтобы отрегулировать высоту пользовательской клавиатуры, измените ограничение высоты его основного вида.
override func viewWillAppear(animated: Bool) {
let desiredHeight:CGFloat!
if UIDevice.currentDevice().userInterfaceIdiom == .Phone{
desiredHeight = 259
}else{
if UIDevice.currentDevice().orientation == .Portrait{
desiredHeight = 260
}else {
desiredHeight = 300
}
}
let heightConstraint = NSLayoutConstraint(item: view, attribute: NSLayoutAttribute.Height, relatedBy: NSLayoutRelation.Equal, toItem: nil, attribute: NSLayoutAttribute.NotAnAttribute, multiplier: 1.0, constant: desiredHeight)
view.addConstraint(heightConstraint)
}
документация сказал, вы можете регулировать высоту клавиатуры после того, как макет, так что вы можете использовать viewWillAppear
, чтобы сделать это.
Должно быть принято! – user3404693
Итак, единственный способ сделать это программно? – smecperson
кажется, что это единственный способ – user2277872