如何根据 swift 中的 iPhone 大小使滚动视图达到键盘高度
How to make scrollview up to keyboard height according to iPhone sizes in swift
我添加了 scrollView
顶部、左侧、右侧、底部 0。在 scrollView
中,我添加了高度为 550 的 viewinScrollview
,在此视图中,我添加了 fieldsContainerView
.如下图
storyboard view hierarchy img
如果我 运行 在 iPhone8 中进行项目,那么设计看起来不错,但如果我在 iPhone 11 pro 中 运行,我会看到不必要的 scrollview
。我给了 scrollview
颜色是绿色和 viewinScrollview
颜色是白色。
在 iPhone 11 pro 我越来越喜欢下面,绿色 space 是滚动视图我不想要 space 在键盘 iPhone 11 pro
之后
这是 iPhone8 模拟器 iPhone8 我需要这样的所有 iPhone 尺寸。
代码如下:
override func viewDidLoad() {
super.viewDidLoad()
NotificationCenter.default.addObserver(self, selector: #selector(keyboardDidShow), name: UIResponder.keyboardDidShowNotification, object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(keyboardDidHide), name: UIResponder.keyboardDidHideNotification, object: nil)
}
@objc func keyboardDidShow(notification: NSNotification) {
let info = notification.userInfo
let keyBoardSize = info![UIResponder.keyboardFrameEndUserInfoKey] as! CGRect
scrolView.contentInset = UIEdgeInsets(top: 0.0, left: 0.0, bottom: keyBoardSize.height, right: 0.0)
scrolView.scrollIndicatorInsets = UIEdgeInsets(top: 0.0, left: 0.0, bottom: keyBoardSize.height, right: 0.0)
}
@objc func keyboardDidHide(notification: NSNotification) {
scrolView.contentInset = UIEdgeInsets.zero
scrolView.scrollIndicatorInsets = UIEdgeInsets.zero
}
请帮我删除所有 iPhone 尺寸的绿色 space。
这是帮助您管理 scrollView、TableView、CollectionView 中的文本字段的库。你可以使用这个库。在这个库的帮助下,您不需要管理每个设备的滚动视图内容插图。
Github Link:- https://github.com/hackiftekhar/IQKeyboardManager
删除情节提要中滚动视图的背景颜色。
您可以按照我的方法进行更多说明。
使用以下有助于管理任何 contentView 中的 textField 或 textView 的库
Github Link:- https://github.com/Sunilkumar01091985/KeyBoard/tree/master
我添加了 scrollView
顶部、左侧、右侧、底部 0。在 scrollView
中,我添加了高度为 550 的 viewinScrollview
,在此视图中,我添加了 fieldsContainerView
.如下图
storyboard view hierarchy img
如果我 运行 在 iPhone8 中进行项目,那么设计看起来不错,但如果我在 iPhone 11 pro 中 运行,我会看到不必要的 scrollview
。我给了 scrollview
颜色是绿色和 viewinScrollview
颜色是白色。
在 iPhone 11 pro 我越来越喜欢下面,绿色 space 是滚动视图我不想要 space 在键盘 iPhone 11 pro
之后这是 iPhone8 模拟器 iPhone8 我需要这样的所有 iPhone 尺寸。
代码如下:
override func viewDidLoad() {
super.viewDidLoad()
NotificationCenter.default.addObserver(self, selector: #selector(keyboardDidShow), name: UIResponder.keyboardDidShowNotification, object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(keyboardDidHide), name: UIResponder.keyboardDidHideNotification, object: nil)
}
@objc func keyboardDidShow(notification: NSNotification) {
let info = notification.userInfo
let keyBoardSize = info![UIResponder.keyboardFrameEndUserInfoKey] as! CGRect
scrolView.contentInset = UIEdgeInsets(top: 0.0, left: 0.0, bottom: keyBoardSize.height, right: 0.0)
scrolView.scrollIndicatorInsets = UIEdgeInsets(top: 0.0, left: 0.0, bottom: keyBoardSize.height, right: 0.0)
}
@objc func keyboardDidHide(notification: NSNotification) {
scrolView.contentInset = UIEdgeInsets.zero
scrolView.scrollIndicatorInsets = UIEdgeInsets.zero
}
请帮我删除所有 iPhone 尺寸的绿色 space。
这是帮助您管理 scrollView、TableView、CollectionView 中的文本字段的库。你可以使用这个库。在这个库的帮助下,您不需要管理每个设备的滚动视图内容插图。
Github Link:- https://github.com/hackiftekhar/IQKeyboardManager
删除情节提要中滚动视图的背景颜色。
您可以按照我的方法进行更多说明。
使用以下有助于管理任何 contentView 中的 textField 或 textView 的库
Github Link:- https://github.com/Sunilkumar01091985/KeyBoard/tree/master