Надеюсь, что вставляем subview перед отображаемой клавиатурой. Я использую следующий код:Как разместить подвью перед клавиатурой?
[self.view bringSubviewToFront: myView];
но subview не отображается.
Надеюсь, что вставляем subview перед отображаемой клавиатурой. Я использую следующий код:Как разместить подвью перед клавиатурой?
[self.view bringSubviewToFront: myView];
но subview не отображается.
Я не совсем уверен, что вы ищете, но, насколько я понимаю, вы хотите подсмотреть «готовый»/«возврат» по клавиатуре. Вы, может быть в состоянии сделать это, делая что-то вроде этого (когда клавиатура идет вверх)
UIWindow* tempWindow = [[[UIApplication sharedApplication] windows] objectAtIndex:1];
UIView* keyboard;
for(int i=0; i<[tempWindow.subviews count]; i++)
{
keyboard = [tempWindow.subviews objectAtIndex:i];
// keyboard view found; add the custom button to it
if([[keyboard description] hasPrefix:@"UIKeyboard"] == YES)
[keyboard addSubview:doneButton];
}
bringSubviewToFront
идея не удалась, поскольку она (клавиатура) не подвид вашего приложения.
Из того, что я могу видеть на iOS 7, свойство windows не всегда имеет 2 окна. Однако на iOS 8 это работает нормально. – alexgophermix
Кредит Артему из this question
Вместо того чтобы использовать этот цикл, чтобы найти правильное окно, которое вы можете использовать вместо этого:
UIWindow * window = [UIApplication sharedApplication].windows.lastObject;
[window addSubview:_menuView];
[window bringSubviewToFront:_menuView];
Пока вы добавляете его в то время как это клавиатура активна, то клавиатура всегда будет последней добавленной точкой зрения и значительно уменьшит сложность кода.
@Altaf, префикс, который вы упоминаете в своем коде, не является хорошим. Вы должны использовать:
if([[keyboard description] hasPrefix:@"<UIPeripheralHostView"] == YES)
See an example, с классами Touchpose, чтобы показать штрихи на демо-приложений, которые я изменил, чтобы отобразить анимацию над клавиатурой.
Что вы действительно хотите сделать? Потому что показ представления перед «клавиатурой» не имеет смысла. Я уверен, что вы что-то пропустили, задавая свой вопрос. Разверните свой вопрос с более подробной информацией, которую вы хотите сделать. Положите любые снимки экрана, если у вас есть. – Hemang