gpt4 book ai didi

ios - UIAlertView 与 UIAlertController - iOS 8 中没有键盘

转载 作者:技术小花猫 更新时间:2023-10-29 10:59:11 24 4
gpt4 key购买 nike

我有一个针对 iOS 6 及更高版本的旧 Xcode 项目。我最近在 Xcode 6 中打开它并在适用于 iOS 8 的 iPhone 6 模拟器中运行。当我尝试此操作时

UIAlertView* dialog = [[UIAlertView alloc] initWithTitle:@"Enter Folder Name"
message:@"Keep it short and sweet"
delegate:self
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"OK", nil];

dialog.alertViewStyle = UIAlertViewStylePlainTextInput;
dialog.tag = 400;
[dialog show];

我得到一个弹出窗口,但是当我单击文本字段时,没有出现键盘。我用谷歌搜索并阅读到我需要改用 UIAlertController 。因为我也需要支持 iOS 6、7 版本,所以我像这样更改了我的代码。

if ([UIAlertController class])
{
// use UIAlertController
UIAlertController *alert= [UIAlertController
alertControllerWithTitle:@"Enter Folder Name"
message:@"Keep it short and sweet"
preferredStyle:UIAlertControllerStyleAlert];

UIAlertAction* ok = [UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault
handler:^(UIAlertAction * action){
//Do Some action here
UITextField *textField = alert.textFields[0];
NSLog(@"text was %@", textField.text);

}];
UIAlertAction* cancel = [UIAlertAction actionWithTitle:@"Cancel" style:UIAlertActionStyleDefault
handler:^(UIAlertAction * action) {

NSLog(@"cancel btn");

[alert dismissViewControllerAnimated:YES completion:nil];

}];

[alert addAction:ok];
[alert addAction:cancel];

[alert addTextFieldWithConfigurationHandler:^(UITextField *textField) {
textField.placeholder = @"folder name";
textField.keyboardType = UIKeyboardTypeDefault;
}];

[self presentViewController:alert animated:YES completion:nil];

}
else
{
// use UIAlertView
UIAlertView* dialog = [[UIAlertView alloc] initWithTitle:@"Enter Folder Name"
message:@"Keep it short and sweet"
delegate:self
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"OK", nil];

dialog.alertViewStyle = UIAlertViewStylePlainTextInput;
dialog.tag = 400;
[dialog show];

}

如果我再次尝试相同的操作,则会显示 NO keyboard

这是 Xcode 6 模拟器中的错误还是我做错了什么?

enter image description here

最佳答案

我对此进行了测试,如果 iOS8 检测到硬件键盘,则不会打开键盘。由于您可能正在模拟器中进行测试,因此它没有显示任何键盘

按“Command”+“k”,您应该能够看到键盘。

在设备上测试时你不会遇到这个问题,除非用户已经将他的设备连接到硬件蓝牙键盘,所以这不是你应该担心的事情

希望对你有帮助

关于ios - UIAlertView 与 UIAlertController - iOS 8 中没有键盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26074475/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com