如何使用swift使用页面控件创建滚动视图?
发布于 2021-01-31 23:57:07
我正在尝试创建具有多个视图的页面视图控制器。我想要一个简单的代码示例,它将使用 UIPageViewController 。
关注者
0
被浏览
285
1 个回答
-
import UIKit
class DummyVC: UIViewController, UIScrollViewDelegate { let scrollView = UIScrollView(frame: CGRect(x:0, y:0, width:320,height: 300)) var colors:[UIColor] = [UIColor.red, UIColor.blue, UIColor.green, UIColor.yellow] var frame: CGRect = CGRect(x:0, y:0, width:0, height:0) var pageControl : UIPageControl = UIPageControl(frame: CGRect(x:50,y: 300, width:200, height:50)) override func viewDidLoad() { super.viewDidLoad() configurePageControl() scrollView.delegate = self scrollView.isPagingEnabled = true self.view.addSubview(scrollView) for index in 0..<4 { frame.origin.x = self.scrollView.frame.size.width * CGFloat(index) frame.size = self.scrollView.frame.size let subView = UIView(frame: frame) subView.backgroundColor = colors[index] self.scrollView .addSubview(subView) } self.scrollView.contentSize = CGSize(width:self.scrollView.frame.size.width * 4,height: self.scrollView.frame.size.height) pageControl.addTarget(self, action: #selector(self.changePage(sender:)), for: UIControlEvents.valueChanged) } func configurePageControl() { // The total number of pages that are available is based on how many available colors we have. self.pageControl.numberOfPages = colors.count self.pageControl.currentPage = 0 self.pageControl.tintColor = UIColor.red self.pageControl.pageIndicatorTintColor = UIColor.black self.pageControl.currentPageIndicatorTintColor = UIColor.green self.view.addSubview(pageControl) } // MARK : TO CHANGE WHILE CLICKING ON PAGE CONTROL func changePage(sender: AnyObject) -> () { let x = CGFloat(pageControl.currentPage) * scrollView.frame.size.width scrollView.setContentOffset(CGPoint(x:x, y:0), animated: true) } func scrollViewDidEndDecelerating(_ scrollView: UIScrollView) { let pageNumber = round(scrollView.contentOffset.x / scrollView.frame.size.width) pageControl.currentPage = Int(pageNumber) } }
推荐阅读
-
使用Bootstrap Columns创建水平滚动的List Item视图
2021-02-02 关注 0 浏览64 1答案
-
如何使用 Swift 制作简单的集合视图
2022-07-28 关注 0 浏览13 1答案
-
如何使用SQLAlchemy创建SQL视图?
2021-01-29 关注 0 浏览672 1答案
-
如何以编程方式创建UIImage视图-Swift
2021-01-31 关注 0 浏览87 1答案
-
如何使用 jQuery 让元素滚动到视图中?
2022-07-28 关注 0 浏览12 1答案
-
如何使用 presentModalViewController 创建透明视图
2022-07-28 关注 0 浏览14 1答案
-
使用Swift使用键盘移动视图
2021-01-31 关注 0 浏览90 1答案
-
使用 Swift 使用键盘移动视图
2022-04-11 关注 0 浏览33 1答案
-
在Swift中使用绑定以编程方式创建基于视图的NSTableView
2021-01-31 关注 0 浏览184 1答案
-
如何使用CSS创建图像滚动混合效果?
2021-02-02 关注 0 浏览145 1答案