问题标签 [becomefirstresponder]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
118 浏览

ios - 点击空白区域后如何隐藏键盘

我试图让键盘在点击空白区域时消失(文本字段在 tableViewCells 中)我可以使用以下代码做到这一点

但在此之后 tableView 单元格的 didSelectRowAtIndexPath 委托方法根本没有被调用。我该怎么办?

我还为 onTappingView 函数尝试了以下代码,但它不起作用:

0 投票
1 回答
532 浏览

ios - 如何使新插入的表格视图单元格的文本字段处于活动状态?

当我的 tableView 被编辑时,我有一个带有插入附件的行,它在它上面插入一个新的 table view 单元格,它有一个文本字段。如何使文本字段处于活动状态(即成为FirstResponder)?例如,在 Apple 联系人应用程序中,如果您添加新手机,它会自动选择新行的文本字段并出现键盘。

从网上搜索,似乎单元格的 textField 并没有立即添加到队列中,因此您必须在正确的时间调用 becomeFirstResponder 。我应该什么时候调用它?

在 commitEditingStyle: forRowAtIndexPath 我试过:...

不工作。

在 cellForRowAtIndexPath 我也尝试过(有点破解):

但它似乎也没有在那里做出反应。(成为第一响应者返回 FALSE)

调用 becomeFirstResponder 的正确位置在哪里?

谢谢

编辑:实际上问题是因为我在 cellForRowAtIndexPath 中有以下行:

除非表格处于编辑模式,否则我不希望 textFields 处于活动状态,因此我禁用它们并且仅在表格处于编辑模式时在 didSelectCellAtIndexPath 中重新启用它们。

为什么您应该发布所有代码的主要示例,而不仅仅是您认为相关的代码片段。

0 投票
1 回答
798 浏览

ios - 使用 becomeFirstResponder 导致取消按钮不起作用

我有一个UISearchDisplayController(searchDisplayCtr)和一个UISearchBar(searchBar)。当我单击右侧字母滚动中的搜索图标时,我试图将焦点放在搜索栏上并调出键盘。如果我包括,

它调出键盘并选择搜索栏,但取消按钮无法始终如一地工作。我曾尝试让第一响应者辞职,将 active 设置为 NO 和两者searchDisplayControllerWillEndSearch,但这没有帮助。仅当尚未单击字母滚动条上的其他字母时,取消按钮才会起作用。

0 投票
1 回答
132 浏览

ios - UITextView 成为第一响应者,但指针不去那里

好的,所以我有一个相当奇怪的问题:我的 UITextView 成为第一响应者,我可以说是因为键盘出现了,但是发生的情况是指针没有出现,即使您键入也无法编辑文本。这是此控制器中唯一的 UITextView,因此它不能触发任何其他文本视图。有任何想法吗?谢谢 :)

这是真的,因为如果这个 BOOL 为 FALSE,它根本不会显示。note 是类级别的,因此可以毫无问题地像这样调用它。

那是创建注释的代码

0 投票
2 回答
773 浏览

objective-c - 当文本字段成为第一响应者时,手势识别器没有响应,即使在辞职后

我可能错过了一些东西......首先,我继承UITextField了一个 Tap 手势识别器并将其添加到UITextField(在指定的初始化程序中):

然后我将我的 viewController 设置为 textField 委托并实现了这个:

从这一点开始,由于某种原因,pressed:在点击 textField 时不会被调用。任何想法为什么?

0 投票
5 回答
8817 浏览

ios - 为什么 UITextField becomeFirstResponder 返回 NO?

这是我的代码:

这是它记录的内容:

有谁知道它为什么会这样做?如您所见,文本字段可以成为第一响应者,但它不会。

0 投票
2 回答
1855 浏览

ios - 当以编程方式将 UITextField 设置为 FirstResponder 时,会导致一些奇怪的文本编辑动作

我有一个带有自定义键盘的 UITextField,基本上就像一个计算器。我希望我的键盘默认显示,所以我使用[self.topInputTextField becomeFirstResponder];viewDidLoad,我认为这是非常常见的用法。但是,它会在我的文本字段上引起一些非常奇怪的操作。

当我将我的文本字段设置为 viewDidLoad 中的第一响应者时,每次我完成编辑后,文本都会跳转,当我单击另一个文本字段并再次单击第一个文本字段时,第一个文本字段中的文本有时会移动下降并消失,但有时不会。我觉得很难描述,所以我为它录制了一张 GIF 图片。

在此处输入图像描述

我确定[self.topInputTextField becomeFirstResponder];导致该问题的原因是,当我将那行代码注释掉时,一切都恢复正常。这是我注释掉该行后的 GIF:

在此处输入图像描述

这对我来说很奇怪,在 2 个 GIF 文件之间,我所做的唯一更改是注释掉那行代码。我在 SE 上找不到任何解决方案。任何想法将不胜感激。

编辑: 另外一件事是我尝试更改字体和字体大小,它们都有类似的奇怪行为。

*编辑2:**这是我设置文本字段的方式,我没有做任何花哨的事情

在此处输入图像描述

0 投票
3 回答
1727 浏览

ios - 文本 becomeFirstResponder 抛出 EXC_BAD_ACCESS 代码=1 地址=0x1

这是一个问答,希望能帮助遇到此问题的其他人。当我在控件之间传输 FirstResponder 链时,这个问题似乎是随机发生的。

控件是自定义控件对象,继承自UIViewaUITextFieldUITextView添加为子视图(与其他控件)并完全在代码中生成。

并非生成的控件的每个实例都会引发异常,但无论是否调用了代码或是否被点击了,都会始终如一地textfield/textview这样[text becomeFirstResponder]textfield/textview

我在这个上扯了大约6个小时的头发......

0 投票
3 回答
114 浏览

ios - 当没有要 resignFirstResponder 的文本字段时如何关闭键盘

在此处输入图像描述

在以下情况下,单击铅笔将 iz 1 文本设置为可编辑,becomeFirstResponder并打开键盘,我希望在单击“空行”或 iz2 时关闭键盘。

我怎样才能做到这一点?

我试过添加到 cellView

但它没有用

0 投票
2 回答
2016 浏览

ios - becomeFirstResponder 正在触发 UIKeyboardDidHideNotification

我的应用程序的一个目标是管理多个自定义输入视图(来自 nib)以及常规系统键盘。一个或另一个将永远存在。(在示例代码中,我只管理一个笔尖 + 系统键盘)。

换出键盘时,我想保留您在系统键盘上看到的滑入/滑出效果。为了获得自定义键盘和系统键盘的滑动动画,我从文本字段中 resignFirstResponder 并等到键盘被隐藏。然后我执行 becomeFirstResponder 来引入新键盘。我使用 UIKeyboardDidHideNotification 作为触发器来触发 becomeFirstResponder 并加载新键盘。

我看到的问题是 UIKeyboardDidHideNotification 被触发了两次......执行 resignFirstResponder 时(如预期的那样)和执行 becomeFirstResponder 时再次触发。我怀疑我可以进入某种状态来检测第二个通知,但我想了解,为什么 becomeFirstResponder 导致它首先触发?