gpt4 book ai didi

ios - 如何使 UIScrollview 一次只显示一个 subview

转载 作者:搜寻专家 更新时间:2023-11-01 06:35:49 25 4
gpt4 key购买 nike

我遵循了一个教程:https://www.youtube.com/watch?v=1_daE3IL_1s它教你如何在 swift 3 中制作类似菜单的 snap-chat,每次你滑动时都会在屏幕上放置一个新的 subview ,但它是唯一的,你需要再滑动一次才能获得下一个 View 。本教程是在 swift 2 中制作的,但是当我更新到 swift 3 时, ScrollView 现在像普通 ScrollView 一样流畅地滚动。有什么办法可以解决这个问题吗?

主视图 Controller 代码:

class ViewController: UIViewController {

@IBOutlet weak var scrollView: UIScrollView!

override func viewDidLoad() {
super.viewDidLoad()

let V1: View1 = View1(nibName: "View1", bundle: nil)
let V2: View2 = View2(nibName: "View2", bundle: nil)
let V3: View3 = View3(nibName: "View3", bundle: nil)

V1.didMove(toParentViewController: self)
self.addChildViewController(V1)
self.scrollView.addSubview(V1.view)

V2.didMove(toParentViewController: self)
self.addChildViewController(V2)
self.scrollView.addSubview(V2.view)

V3.didMove(toParentViewController: self)
self.addChildViewController(V3)
self.scrollView.addSubview(V3.view)

var V2Frame: CGRect = V2.view.frame
V2Frame.origin.x = self.view.frame.width
V2.view.frame = V2Frame

var V3Frame: CGRect = V3.view.frame
V3Frame.origin.x = 2 * self.view.frame.width
V3.view.frame = V3Frame

self.scrollView.contentSize = CGSize(width: self.view.frame.width*3 , height: self.view.frame.size.height)
}

override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}

}

最佳答案

启用分页:

override func viewDidLoad() {
super.viewDidLoad()
scrollView.isPagingEnabled = true
// ...
}

关于ios - 如何使 UIScrollview 一次只显示一个 subview ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41784412/

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