怎么做用UISegmentedControl切换ViewControllers?

时间:2017-10-26 07:53:23

标签: ios swift uiviewcontroller uisegmentedcontrol

我有三个数组,用于控制段的三个单元格。我做了一个ViewController。并且阵列开始散布在细胞周围,但是我遇到了一个问题,即我不能让细胞单元成为第一个。现在我想重拍。

import UIKit
import Parse

class PrognozSegmentViewController: UIViewController,UITableViewDataSource,UITableViewDelegate {

        var soccerString = [Soccer]()
        var basketString = [Basketball]()
        var tennisString = [Tennis]()

        var refresh : UIRefreshControl!

        @IBOutlet weak var tableView: UITableView!
        @IBOutlet weak var segmentControl: UISegmentedControl!
        @IBAction func btnSegment(_ sender: Any) {
            tableView.reloadData()
        }

        func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
            var returnSport = 0
            switch (segmentControl.selectedSegmentIndex) {
            case 0 :

                returnSport = soccerString.count
                break
            case 1 :
                returnSport = basketString.count
                break
            case 2 :
                returnSport = tennisString.count
                break
            default :
                break
            }

            return returnSport
        }

1 个答案:

答案 0 :(得分:0)

你可以从' numberOfRowsInSection'中取出var returnSport。方法

var returnSport = 0
var soccerString = [Soccer]()
var basketString = [Basketball]()
var tennisString = [Tennis]()
var refresh : UIRefreshControl!

并将值类型从Any更改为UISegmentedControl

@IBAction func btnSegment(_ sender: Any) {
   returnSport = sender.selectedSegmentIndex
   tableView.reloadData()
}

重新加载数据时,再次调用numberOfRowsInSection方法并更改returnSport变量