gpt4 book ai didi

ios - 当文本字段退出第一响应者时, ScrollView 内容返回到原始位置

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:11:19 25 4
gpt4 key购买 nike

拥有第一个委托(delegate)应用的新 iOS 开发者。

具有多个文本字段的 ScrollView 。

textFieldDidBeginEditing: 中编码了页面内容的向上移动,这样文本字段就不会被键盘遮挡。当使用 textFieldShouldReturn: 按下键盘返回键时,已编码键盘消失,我已编码屏幕返回到其在 didHideKeyboard 中的原始位置。

如果用户在第一响应者文本字段之外点击(包括如果他们在另一个文本字段中点击),屏幕会以某种方式返回到其原始位置,而不会触发我的任何代码,并且键盘不会消失。我没有使用 autolayout

我的问题是,当用户在第一个文本字段中键入内容后立即点击第二个文本字段时,如何防止屏幕返回到其原始位置?

最佳答案

这取决于当用户尝试触摸文本字段外部时您要执行的操作。一种选择是在编辑文本字段时简单地禁用 ScrollView 上的滚动,然后在关闭键盘时重新启用它。

一个不同的选择是实现 UIScrollViewDelegate 方法 scrollViewWillBeginDragging: 以检测用户正在移动 ScrollView ,然后重置 ScrollView 的偏移量,并从那里退出文本字段的第一响应者。

- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView
{
if (myTextField.isFirstResponder) {
[scrollView setContentOffset:originalOffset];
[myTextField resignFirstResponder];
}
}

关于ios - 当文本字段退出第一响应者时, ScrollView 内容返回到原始位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18532516/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com