ScrollView 对齐到中心
Posted
技术标签:
【中文标题】ScrollView 对齐到中心【英文标题】:ScrollView snap to center 【发布时间】:2018-06-26 14:55:53 【问题描述】:我想像这个视频一样设置我的滚动视图(我知道在视频中使用 collectionview bu 出于某种原因我想将此效果转换为滚动视图)
https://www.dropbox.com/s/kj6xgj68gz6258p/ScreenRecording_06-26-2018%2019-15-43.MP4
3 重要的事情:
-
滚动时必须对齐到中心
调整当前项的大小(向前项大于向后项)
迅速
更新:
var ScrollView = UIScrollView()
var arr : Array<UIColor> = [.red,.blue,.green]
override func viewDidLoad()
super.viewDidLoad()
ScrollView.translatesAutoresizingMaskIntoConstraints = false
self.view.addSubview(ScrollView)
ScrollView.widthAnchor.constraint(equalToConstant: self.view.frame.size.width).isActive = true
ScrollView.heightAnchor.constraint(equalToConstant: 320).isActive = true
ScrollView.centerYAnchor.constraint(equalTo: self.view.centerYAnchor, constant: 0).isActive = true
ScrollView.alwaysBounceVertical = false
ScrollView.isPagingEnabled = true
ScrollView.contentSize = CGSize(width: 3.0 * self.view.frame.size.width, height: 320)
ScrollView.contentOffset = CGPoint(x: view.frame.size.width, y: 0)
ScrollView.center = self.view.center
for i in 0..<3
let viewBG = UIView()
viewBG.backgroundColor = arr[i]
if (i == 0)
viewBG.frame = CGRect(x: view.frame.size.width * CGFloat(i) + 125, y: 0, width: view.frame.size.width - 100, height: 320)
else if(i == 1)
viewBG.frame = CGRect(x: view.frame.size.width * CGFloat(i) + 50, y: 0, width: view.frame.size.width - 100, height: 320)
else
viewBG.frame = CGRect(x: view.frame.size.width * CGFloat(i) - 25, y: 0, width: view.frame.size.width - 100, height: 320)
ScrollView.addSubview(viewBG)
谢谢大家
【问题讨论】:
显示你迄今为止尝试过的内容。 亲爱的@AndréSlotta 我更新了我的问题。 【参考方案1】:使用 iCarousal。它很容易实现,也可以使用 Swift 示例。
以下是链接 - https://github.com/nicklockwood/iCarousel
【讨论】:
以上是关于ScrollView 对齐到中心的主要内容,如果未能解决你的问题,请参考以下文章
除非我添加另一个 UIView,否则 ScrollView 中的 TableView 为空?
Android:ScrollView 与 NestedScrollView