2017-10-26 7 views
0

私はコントロールセグメントの3つのセルに対して3つの配列を持っています。私は1つのViewControllerを作った。そして配列は細胞の周りに散らばり始めましたが、細胞単位を最初にすることができないという問題に遭遇しました。今私はリメイクしたい。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 
     } 
+0

コードを入力してください –

+0

おそらくtableView.delegate = selfとtableView.dataSouce = selfを設定するのを忘れていたでしょうか? –

答えて

0

あなたがデータをリロードすると、あなたは再びnumberOfRowsInSectionメソッドを呼び出す

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

UISegmentedControlにどれから 'numberOfRowsInSection' メソッドから

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

と変更値の種類をするvar returnSportを取り出すことができますreturnSport変数を変更して

関連する問題