我正在iOS6中开发一个应用程序,我正在使用XCode 4.5.2。
我有一个 UITableView ,其格式为grouped
。每个单元格都有一个 UITextField ,其大小完全等于 UITableViewCell 大小。要创建 UITextField ,我正在使用这段代码。
UITextField *txtField = [[UITextField alloc]initWithFrame:CGRectMake(20, 10, 320, 44)];
txtField.autocorrectionType = UITextAutocorrectionTypeNo ;
txtField.opaque = 1.0;
txtField.contentMode = UIViewContentModeCenter;
if(indexPath.row == 0)
txtField.placeholder = @"Name";
else if(indexPath.row == 1)
txtField.placeholder = @"Email";
if(indexPath.section == 2)
txtField.placeholder = @"Write here...";
[cell addSubview:txtField ];
我将此 UITextField 添加到cell
作为子视图。问题是,有时,当我点击单元格时,键盘应该出现。但是,这是我点击任何单元格时的屏幕截图。
这意味着当我将 UITextField 添加到cell
时,它无效。因为,这是 UITableView 的正常行为。奇怪的问题是当我再次点击时,会出现键盘,并且它正常工作。但是,每个细胞上仍然有蓝色,我无法将其破坏。这是第二个截图。
并且,它也不会一直发生,所以我无法检测是什么原因造成这种意外行为。
你们有什么想法我如何解决这个问题以及导致它的原因?
谢谢。
答案 0 :(得分:0)
我认为你只需要将tableView.allowsSelection设置为FALSE。