TabBarControllerを使って
もしTag1のタブがタップされたらlet list1 = ["りんご","オレンジ","ぶどう"]
をTableViewに表示、
Tab2がタップされたら let list2 = ["牛肉","豚肉","鶏肉"]
をTableViewに表示
という機能を実装したくif文を使って分岐はわかりますが
’もしTabがタップされたら’の部分の書き方がわかりません
教えてくだされば幸いです
import UIKit import AVKit import AVFoundation class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource { @IBOutlet weak var TabBarController: UITabBar! let list1 = ["りんご", "オレンジ", "ぶどう"] let list2 = ["牛肉","豚肉","鶏肉"] override func viewDidLoad(){ super.viewDidLoad() } func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { if Tab1がタップされたら //ここがわかりません { return list1.count }else if Tab2がタップされたら{ //ここがわかりません return list2.count } } func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { <#code#> }
TabBarController は ViewController の切り替え(画面の切り替え)で使うことが主目的であって、今回のような目的には使えないと思います。
代わりにToolBarを画面下部に設置し、そこに配置したボタンを押すことでTableViewに表示する内容を変更することになるかと思いますが、いかがでしょうか。
それで良いかなと思うので、詳しく教えて頂きたいです。
ただ、segueで遷移させるとsegueが多くなってぐちゃぐちゃするのを防ぎたいです。
なので遷移させずに表示内容だけを変更したいです。
segueを使う必要はなく、ToolBarに配置したBarButtonItemをタップされた時の処理を追加し、その中でリストを変更すれば良いだけとなります。
回答にサンプルをおきますので、それを参照していただけますでしょうか。
回答1件
あなたの回答
tips
プレビュー