【问题标题】:UITextField automatically begins editing modeUITextField 自动开始编辑模式
【发布时间】:2012-06-05 03:46:35
【问题描述】:

我在UITableView 中有三个UITextFields(3 个单独的行)。前两个是标准的UITextFields,需要文本输入,但第三个需要数据输入并与UIDatePicker 关联。

问题陈述: 当屏幕加载时,第三个文本字段会自动开始编辑并弹出日期选择器。这很烦人。我只希望屏幕在执行任何操作之前等待用户开始输入。请在下面找到我的viewDidLoad 代码。非常感谢您的帮助/见解

- (void)viewDidLoad
{
[super viewDidLoad];

[scrollView setContentSize:CGSizeMake(320, 910)];

expirationDatePicker.hidden = YES;
expirationDatePicker.date = [NSDate date];
[expirationDatePicker addTarget:self
                         action:@selector(changeDateValue:)
               forControlEvents:UIControlEventValueChanged];

[self configureView];
}

- (void)configureView
{
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);  
    NSString *documentsPath = [paths objectAtIndex:0]; //Get the docs directory 
    NSString *filePath = [documentsPath stringByAppendingPathComponent:[self.detailItem cardName]];
    filePath = [filePath stringByAppendingPathExtension:@".png"];
    NSData *pngData = [NSData dataWithContentsOfFile:filePath];
    imgPickerButton.imageView.image = [UIImage imageWithData:pngData];
}

附件是屏幕加载后立即截取的屏幕截图。可以看到第三个文本域进入了编辑模式。

【问题讨论】:

  • 是否处于编辑模式?它看起来像占位符文本....?
  • 我确实有文本字段的默认值,但为什么该文本字段进入编辑模式?也就是说,一旦屏幕加载,该文本字段上的光标和日期选择器就会变得可见
  • 更新:所以我继续在 viewDidLoad 方法的底部添加了一行,上面写着 [expirationDateTextField resignFirstResponder],但随后上面的文本字段进入编辑模式。我只希望屏幕完全可见,而没有任何文本字段进入编辑模式。这不可能吗?
  • 请将您的代码发布为[self configureView];必须导致这种情况....
  • 添加了 configureView 方法——这让我很难过!!

标签: ios uitextfield uidatepicker


【解决方案1】:

我会这样做的一种方法是将您的日期文本字段转换为自定义 UITableViewCell 中的 UIButton,并在用户触摸按钮时调出日期选择器。

当用户选择完日期后,更改按钮的标题以反映日期。

【讨论】:

    【解决方案2】:

    好的 - 找到了问题。在我的表格视图中,我有自定义 UITableViewCells,在那些自定义单元格中,出于某种原因,我有这种方法 -

    - (void)setSelected:(BOOL)selected animated:(BOOL)animated
    {
        [super setSelected:selected animated:animated];
        [self.textField becomeFirstResponder];
    }
    

    这导致各个 tableviewcells 中的文本字段自动进入编辑模式。一旦我删除了这段代码,它就停止这样做了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-03-11
      • 1970-01-01
      • 2012-10-17
      • 1970-01-01
      • 1970-01-01
      • 2010-11-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多