zoukankan      html  css  js  c++  java
  • swift 分页视图

    var data:NSArray!

        

        var scrollView: UIScrollView!

        

        var pageCtrl: UIPageControl!

        

        override func viewDidLoad() {

            super.viewDidLoad()

            

            // 实例化tableView

            let tableView:UITableView = UITableView(frame: self.view.bounds, style: UITableViewStyle.Plain)

            tableView.delegate = self

            tableView.dataSource = self

            tableView.registerClass(UITableViewCell.self, forCellReuseIdentifier: "cell")

            self.view.addSubview(tableView)

            

            // 系统字体

            data = UIFont.familyNames()

            

            // 实例化scrollView

            let widthm = tableView.frame.size.width

            let view: UIView = UIView(frame: CGRect(x: 0, y: 0, 0, height: 200))

            scrollView = UIScrollView(frame: CGRect(x: 0, y: 0, widthm, height: 200))

            scrollView.contentSize = CGSize( widthm * 5, height: 200)

            scrollView.showsHorizontalScrollIndicator = false

            scrollView.showsVerticalScrollIndicator = false

            scrollView.pagingEnabled = true

            scrollView.delegate = self

            for index in 1...5 {

                let imgName = "image(index).jpg"

                let imgView: UIImageView = UIImageView(image: UIImage(named: imgName))

                imgView.frame = CGRect(x: widthm * CGFloat(index - 1), y: 0, widthm, height: 200)

                scrollView.addSubview(imgView)

            }

            view.autoresizesSubviews = false

            view.addSubview(scrollView)

            

            // 实例化分页控制器

            pageCtrl = UIPageControl(frame: CGRect(x: 0, y: 200 - 20, widthm, height: 20))

            pageCtrl.addTarget(self, action: Selector("pageCtrlAction:"), forControlEvents: UIControlEvents.ValueChanged)

            pageCtrl.numberOfPages = 5

            pageCtrl.currentPage = 0

            view.addSubview(pageCtrl)

            

            tableView.tableHeaderView = view

            

        }

        

        //MARK: UITableViewDataSource

        func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {

            return data.count

        }

        

        func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

            let tableViewCell = tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath) as UITableViewCell

            

            tableViewCell.textLabel?.text = self.data[indexPath.row] as? String

            

            return tableViewCell

        }

        

        //MARK: UIScrollViewDelegate

        func scrollViewDidEndDecelerating(scrollView: UIScrollView) {

            if scrollView == self.scrollView {

                pageCtrl.currentPage = Int(scrollView.contentOffset.x/scrollView.frame.size.width)

            }

        }

        //MARK: pageCtrl Action

        func pageCtrlAction(pageCtrl: UIPageControl) {

    //        scrollView.contentOffset.x = scrollView.frame.width * CGFloat(pageCtrl.currentPage)

            scrollView.setContentOffset(CGPoint(x: scrollView.frame.width * CGFloat(pageCtrl.currentPage), y: 0), animated: true)

        }

  • 相关阅读:
    Directory类的使用、Alt+Shift+F10可以查看其命名空间
    用户控件
    图像检测算法Halcon 10的使用
    MD5加密的使用
    AppDomain.CurrentDomain.AssemblyResolve
    记事本程序
    C#文件操作
    部分常用控件
    TreeView的使用
    ComboBox的使用
  • 原文地址:https://www.cnblogs.com/ZGSmile/p/5726452.html
Copyright © 2011-2022 走看看