iPhone:如何以编程方式激活文本字段(而不是等待用户触摸它)

Posted

技术标签:

【中文标题】iPhone:如何以编程方式激活文本字段(而不是等待用户触摸它)【英文标题】:iPhone: how can I activate a text field programmatically (and not wait for the user to touch it) 【发布时间】:2010-06-18 21:03:36 【问题描述】:

我有一个 UIViewController,它是一个 UITextFieldDelegate,我希望用户导航到该视图时,它的文本字段的键盘就会出现,而不必实际触摸文本字段。当键盘被关闭时,能够“关闭”整个视图也很好。我正在从 xib 文件加载视图。

我在 UITextField 的代码中还没有 ivar。我想我需要一个。此时我只是依靠代理弹出键盘。

(我知道它不是 UITextViewDelegate,就像标签所说的那样,但我是 *** 的新手,无法创建正确的 UITextFieldDelegate 标签。)

【问题讨论】:

【参考方案1】:

听起来你想在viewDidAppear 中使用[textField becomeFirstResponder]

【讨论】:

这是有道理的。但是我如何让那个 textField 开始呢?它似乎不是我的视图的属性,虽然我在视图中添加了一个 UITextField ivar,但我看不到如何将它连接到 xib 中的文本字段。我的课看起来像这样:@interface NewSceneViewController : UIViewController IBOutlet UITextField *tField; @property (nonatomic, 保留) UITextField *tField; @end 等等,我明白了。我需要添加 UITextField ivar 并使其成为属性,然后在其@synthesize 步骤(@synethesize textField = tField;)中分配它,然后在 IB 中我需要将新的引用项(tField)附加到文件的所有者。 哦,我必须确保(在 IB 中)文件的所有者是视图和文本字段的代表。否则键盘不会响应“完成”按钮。

以上是关于iPhone:如何以编程方式激活文本字段(而不是等待用户触摸它)的主要内容,如果未能解决你的问题,请参考以下文章

如何以编程方式删除 UITextField 的内容?

如何在iphone中以编程方式更改按钮文本

以编程方式在 xib 上使用自动布局创建的两个文本字段之间添加 uiview

以编程方式将文本字段值传递给另一个视图中的标签

如何移动界面生成器放置的文本字段和按钮

如何以编程方式在 iPhone 应用程序中从左到右移动文本? [关闭]