0

我有一个基于 Xcode 4.6 和 iOS 6 构建的应用程序。我现在正在使用 XCode 5 将其升级到 iOS 7。

我有这段代码在 iOS 6 上完美运行。它的作用是带来一个带有 UITextField 的弹出窗口。用户可以输入他们想要的任何文本并点击确定。我把他们的文字放在 UILabel 中。

我遇到的问题是,在 iOS 7 中,当我打开这个弹出文本框时,它是不可编辑的。触摸它没有任何作用。怎么来的?

这是代码和屏幕截图

// ************ 
// ENTER TEXT
// ************

-(IBAction)insertText 
{
    UIAlertView* dialog = [[UIAlertView alloc] initWithTitle:@"Enter Text \n"
                                                     message:@"\n\n Keep it short and sweet"   
                                                    delegate:self 
                                           cancelButtonTitle:@"Cancel"
                                           otherButtonTitles:@"OK", nil];

    nameField = [[UITextField alloc] initWithFrame:CGRectMake(20.0, 45.0, 245.0, 25.0)];
    [nameField setBackgroundColor:[UIColor whiteColor]];
    [dialog addSubview:nameField];
    [dialog show];
}

在此处输入图像描述

4

1 回答 1

2

使用提供的 API 而不是这个 hack。不要添加您自己的文本字段(实际上从未支持过),而是将警报视图设置alertViewStyleUIAlertViewStylePlainTextInput. 这将在警报视图中为您提供受支持的文本输入字段。

于 2013-09-26T17:28:28.750 回答