当 UITextField 成为第一响应者时禁用 UIScrollView 滚

Disable UIScrollView scrolling when UITextField becomes first responder(当 UITextField 成为第一响应者时禁用 UIScrollView 滚动)

本文介绍了当 UITextField 成为第一响应者时禁用 UIScrollView 滚动的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当嵌入在 UIScrollView 中的 UITextField 成为第一响应者(例如,通过用户输入某些字符)时,UIScrollView自动滚动到该字段.有什么办法可以禁用吗?

When a UITextField embedded in a UIScrollView becomes the first responder (for example, by the user typing in some character), the UIScrollView scrolls to that Field automatically. Is there any way to disable that?

重复 rdar://16538222

推荐答案

基于 Moshe's answer... 子类 UIScrollView 并覆盖以下方法:

Building on Moshe's answer... Subclass UIScrollView and override the following method:

- (void)scrollRectToVisible:(CGRect)rect animated:(BOOL)animated

留空.大功告成!

在斯威夫特中:

class CustomScrollView: UIScrollView {
    override func scrollRectToVisible(_ rect: CGRect, animated: Bool) { }
}

这篇关于当 UITextField 成为第一响应者时禁用 UIScrollView 滚动的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:当 UITextField 成为第一响应者时禁用 UIScrollView 滚

基础教程推荐