我一直在尝试在 iOS 上显示 toast 消息。我所做的是当任何通知到来时,我只是获取导航 Controller View 并为我的 toast 消息添加一个 subview 并显示。
UIView *top_view = self.navigationController.view;
[top_view showToast:string];
一切正常。但是,我的 toast View 没有在键盘上添加(如果键盘在前面)。知道可能是什么问题......一点帮助可以节省我的时间......谢谢..
最佳答案
您可以通过向主窗口添加 subview 来显示 toast。
UIWindow *toastDisplaywindow = [[[UIApplication sharedApplication] delegate] window];;
for (UIWindow *testWindow in [[UIApplication sharedApplication] windows])
{
if (![[testWindow class] isEqual:[UIWindow class]])
{
self.toastDisplaywindow = testWindow;
break;
}
}
[toastDisplaywindow showToast:string];
如果正在显示键盘,它将显示为一个单独的窗口,位于您常用的主窗口之上。因此进行检查以查明是否正在显示键盘。如果是,则在该窗口中添加 toast 消息,否则在主窗口中添加。
我在这个 link 中找到了另一种方法, 使用它可以直接获取键盘的 UIView(如果需要)。
关于iphone - 如何通过键盘添加 UIView - iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17161590/