首次单击分组UITableView中的UITableViewCell时,不会出现键盘

时间:2013-01-21 18:56:07

标签: ios uitableview uitextfield

我正在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作为子视图。问题是,有时,当我点击单元格时,键盘应该出现。但是,这是我点击任何单元格时的屏幕截图。Screenshot when clicked on cell

这意味着当我将 UITextField 添加到cell时,它无效。因为,这是 UITableView 的正常行为。奇怪的问题是当我再次点击时,会出现键盘,并且它正常工作。但是,每个细胞上仍然有蓝色,我无法将其破坏。这是第二个截图。 Screenshot on second times

并且,它也不会一直发生,所以我无法检测是什么原因造成这种意外行为。

你们有什么想法我如何解决这个问题以及导致它的原因?

谢谢。

1 个答案:

答案 0 :(得分:0)

我认为你只需要将tableView.allowsSelection设置为FALSE。