如何创建从屏幕底部向上滑动的视图类型,如下图所示?这是内置视图类型还是自定义类型?
屏幕截图分别来自 Wunderlist 和 Hit List iOS应用。
答案 0 :(得分:1)
只需看看其中的命中列表即可。好像他们只是从底部向上移动一个视图。
我将通过创建一个UIView
来解决这个问题,我们称之为slidingView
。您可以在现有的情节提要中执行此操作,也可以为其创建一个新的.xib文件。然后,当您调用viewDidLoad
将包含在其中的视图控制器的slidingView
时,将slidingView
视图移出屏幕并在需要时对其进行动画处理。
import UIKit
class ViewController: UIViewController {
private struct Constants {
static let animationDuration: TimeInterval = 0.3
static let marginFromTop: CGFloat = 32.0
}
@IBOutlet private weak var slidingView: UIView!
override func viewDidLoad() {
super.viewDidLoad()
moveSlidingViewOffScreen()
}
// MARK: - Actions
@IBAction func buttonTap(_ sender: UIButton) {
UIView.animate(withDuration: Constants.animationDuration) {
self.slidingView.frame.origin.y = Constants.marginFromTop
}
}
// MARK: - Private functions
private func setupSlidingViewOffScreen() {
slidingView.frame.origin.y = view.frame.height
}
}