带滑块的表格视图

时间:2020-07-22 07:42:38

标签: swift uitableview slider uislider

[app running and console view <---链接到照片]
嘿,制作带有滑块和表格视图的时间表应用程序。只是想弄清楚如何使滑块打印到表格视图。预先道歉,因为有一堆代码。但任何帮助都将不胜感激。所以基本上我的屁股是尝试在顶部有一个滑块,在下面有一个表格视图。可以将滑块移动0-20,并在输出端显示一个标签,指明您所在的号码。现在,我的屁股可以使用print语句执行此操作,但无法完全弄清楚如何使0-20打印到表err,以及如何从控制台获取信息给用户。

import UIKit

class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {
    
    
    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return 20
    }
    
    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        
        let rows = UITableViewCell(style: UITableViewCell.CellStyle.default, reuseIdentifier: "tvtabletest")
       //print(rows);
        
        
        let zero = ["0 * 1 = 0", "0 * 2 = 0", "0 * 3 = 0", "0 * 4 = 0", "0 * 5 = 0", "0 * 6 = 0", "0 * 7 = 0", "0 * 8 = 0", "0 * 9 = 0", "0 * 10 = 0", "0 * 11 = 0", "0 * 12 = 0", "0 * 13 = 0", "0 * 14 = 0", "0 * 15 = 0", "0 * 16 = 0", "0 * 17 = 0", "0 * 18 = 0", "0 * 19 = 0", "0 * 20 = 0"];
        
        rows.textLabel?.text = zero[indexPath.row]
        
        
        
        return rows;
       // rows.text = tableView.text
    
    }
   
    
    @IBOutlet weak var label: UILabel!
    
    
    @IBOutlet weak var tableview: UITableView!
    
    @IBOutlet weak var sliders: UISlider!
    
    @IBAction func slider(_ sender: UISlider) {
        
       // print(sliders.value)
        
        label.text = String(Int(sender.value))
        
        
        if sliders.value == 0 {
           
            
            let zero = ["0 * 1 = 0", "0 * 2 = 0", "0 * 3 = 0", "0 * 4 = 0", "0 * 5 = 0", "0 * 6 = 0", "0 * 7 = 0", "0 * 8 = 0", "0 * 9 = 0", "0 * 10 = 0", "0 * 11 = 0", "0 * 12 = 0", "0 * 13 = 0", "0 * 14 = 0", "0 * 15 = 0", "0 * 16 = 0", "0 * 17 = 0", "0 * 18 = 0", "0 * 19 = 0", "0 * 20 = 0"];
            print(zero)
            
  
            //print("0 * 1 = 0 \n0 * 2 = 0 \n0 * 3 = 0 \n0 * 4 = 0 \n0 * 5 = 0 \n0 * 6 = 0 \n0 * 7 = 0 \n0 * 8 = 0 \n0 * 9 = 0 \n0 * 10 = 0 \n0 * 11 = 0 \n0 * 12 = 0 \n0 * 13 = 0 \n0 * 14 = 0 \n0 * 15 = 0 \n0 * 16 = 0 \n0 * 17 = 0 \n0 * 18 = 0 \n0 * 19 = 0 \n0 * 20 = 0 ")
        
        }
        
        if sliders.value >= 1 {
            
            let one = ["1 * 1 = 1", "1 * 2 = 2", "1 * 3 = 3", "1 * 4 = 4", "1 * 5 = 5", "1 * 6 = 6", "1 * 7 = 7", "1 * 8 = 8", "1 * 9 = 9", "1 * 10 = 10", "1 * 11 = 11", "1 * 12 = 12", "1 * 13 = 13", "1 * 14 = 14", "1 * 15 = 15", "1 * 16 = 16", "1 * 17 = 17", "1 * 18 = 18", "1 * 19 = 19", "1 * 20 = 20"];
            
            print(one);
            
            //print("1 * 1 = 1 \n1 * 2 = 2 \n1 * 3 = 3 \n1 * 4 = 4 \n1 * 5 = 5 \n1 * 6 = 6 \n1 * 7 = 7 \n1 * 8 = 8 \n1 * 9 = 9 \n1 * 10 = 10 \n1 * 11 = 11 \n1 * 12 = 12 \n1 * 13 = 13 \n1 * 14 = 14 \n1 * 15 = 15 \n1 * 16 = 16 \n1 * 17 = 17 \n1 * 18 = 18 \n1 * 19 = 19 \n1 * 20 = 20 ")
        
        }
        
        if sliders.value >= 2 {
           
            let two = ["2 * 1 = 2", "2 * 2 = 4", "2 * 3 = 6", "2 * 4 = 8", "2 * 5 = 10", "2 * 6 = 12", "2 * 7 = 14", "2 * 8 = 16", "2 * 9 = 18", "2 * 10 = 20", "2 * 11 = 22", "2 * 12 = 24", "n2 * 13 = 26", "2 * 14 = 28", "2 * 15 = 30", "2 * 16 = 32", "2 * 17 = 34", "2 * 18 = 36", "2 * 19 = 38", "2 * 20 = 40"];
            
            print(two)
            
            //print("2 * 1 = 2 \n2 * 2 = 4 \n2 * 3 = 6 \n2 * 4 = 8 \n2 * 5 = 10 \n2 * 6 = 12 \n2 * 7 = 14 \n2 * 8 = 16 \n2 * 9 = 18 \n2 * 10 = 20 \n2 * 11 = 22 \n2 * 12 = 24 \n2 * 13 = 26 \n2 * 14 = 28 \n2 * 15 = 30 \n2 * 16 = 32 \n2 * 17 = 34 \n2 * 18 = 36 \n2 * 19 = 38 \n2 * 20 = 40 ")
        
        }
        
        if sliders.value >= 3 {
            
            let three = ["3 * 1 = 3", "3 * 2 = 6", "3 * 3 = 9", "3 * 4 = 12", "3 * 5 = 15", "3 * 6 = 18", "3 * 7 = 21", "3 * 8 = 24", "3 * 9 = 27", "3 * 10 = 30", "3 * 11 = 33", "3 * 12 = 36", "3 * 13 = 39", "3 * 14 = 42", "3 * 15 = 45", "3 * 16 = 48", "3 * 17 = 51", "3 * 18 = 56", "3 * 19 = 57", "3 * 20 = 60"];
            
            print(three)
            
            //print("3 * 1 = 3 \n3 * 2 = 6 \n3 * 3 = 9 \n3 * 4 = 12 \n3 * 5 = 15 \n3 * 6 = 18 \n3 * 7 = 21 \n3 * 8 = 24 \n3 * 9 = 27 \n3 * 10 = 30 \n3 * 11 = 33 \n3 * 12 = 36 \n3 * 13 = 39 \n3 * 14 = 42 \n3 * 15 = 45 \n3 * 16 = 48 \n3 * 17 = 51 \n3 * 18 = 56 \n3 * 19 = 57 \n3 * 20 = 60 ")
            
        }
        
        if sliders.value >= 4 {
           
            let four = ["4 * 1 = 4", "4 * 2 = 8", "4 * 3 = 12", "4 * 4 = 16", "4 * 5 = 20", "4 * 6 = 24", "4 * 7 = 28", "4 * 8 = 32", "4 * 9 = 36", "4 * 10 = 40", "4 * 11 = 44", "4 * 12 = 48", "4 * 13 = 52", "4 * 14 = 56", "4 * 15 = 60", "4 * 16 = 64", "4 * 17 = 68", "4 * 18 = 72", "4 * 19 = 76", "4 * 20 = 80"];
            
            print(four)
            //print("4 * 1 = 4 \n4 * 2 = 8 \n4 * 3 = 12 \n4 * 4 = 16 \n4 * 5 = 20 \n4 * 6 = 24 \n4 * 7 = 28 \n4 * 8 = 32 \n4 * 9 = 36 \n4 * 10 = 40 \n4 * 11 = 44 \n4 * 12 = 48 \n4 * 13 = 52 \n4 * 14 = 56 \n4 * 15 = 60 \n4 * 16 = 64 \n4 * 17 = 68 \n4 * 18 = 72 \n4 * 19 = 76 \n4 * 20 = 80 ")
        
        }
        
        if sliders.value >= 5 {
            
            let five = ["5 * 1 = 5", "5 * 2 = 10", "5 * 3 = 15", "5 * 4 = 20", "5 * 5 = 25", "5 * 6 = 30", "5 * 7 = 35", "5 * 8 = 40", "5 * 9 = 45", "5 * 10 = 50", "5 * 11 = 55", "5 * 12 = 60", "5 * 13 = 65", "5 * 14 = 70", "5 * 15 = 75", "5 * 16 = 80", "5 * 17 = 85", "5 * 18 = 90", "5 * 19 = 95", "5 * 20 = 100"];
            
            print(five)
            
            
          //  print("5 * 1 = 5 \n5 * 2 = 10 \n5 * 3 = 15 \n5 * 4 = 20 \n5 * 5 = 25 \n5 * 6 = 30 \n5 * 7 = 35 \n5 * 8 = 40 \n5 * 9 = 45 \n5 * 10 = 50 \n5 * 11 = 55 \n5 * 12 = 60 \n5 * 13 = 65 \n5 * 14 = 70 \n5 * 15 = 75 \n5 * 16 = 80 \n5 * 17 = 85 \n5 * 18 = 90 \n5 * 19 = 95 \n5 * 20 = 100 ")
            
        }
        
        if sliders.value >= 6 {
            
            let six = ["6 * 1 = 6", "6 * 2 = 12", "6 * 3 = 18", "6 * 4 = 24", "6 * 5 = 30", "6 * 6 = 36", "6 * 7 = 42", "6 * 8 = 48", "6 * 9 = 54", "6 * 10 = 60", "6 * 11 = 66", "6 * 12 = 72", "6 * 13 = 78", "6 * 14 = 84", "6 * 15 = 90", "6 * 16 = 96", "6 * 17 = 102", "6 * 18 = 108", "2 * 19 = 114", "6 * 20 = 120"];
           
            print(six)
            
            
           // print("6 * 1 = 6 \n6 * 2 = 12 \n6 * 3 = 18 \n6 * 4 = 24 \n6 * 5 = 30 \n6 * 6 = 36 \n6 * 7 = 42 \n6 * 8 = 48 \n6 * 9 = 54 \n6 * 10 = 60 \n6 * 11 = 66 \n6 * 12 = 72 \n6 * 13 = 78 \n6 * 14 = 84 \n6 * 15 = 90 \n6 * 16 = 96 \n6 * 17 = 102 \n6 * 18 = 108 \n2 * 19 = 114 \n6 * 20 = 120 ")
            
    }
        
        if sliders.value >= 7 {
        
            let seven = ["7 * 1 = 7", "7 * 2 = 14", "7 * 3 = 21", "7 * 4 = 28", "7 * 5 = 35", "7 * 6 = 42", "7 * 7 = 49", "7 * 8 = 56", "7 * 9 = 63", "7 * 10 = 70", "7 * 11 = 77", "7 * 12 = 84", "7 * 13 = 91", "7 * 14 = 98", "7 * 15 = 104", "7 * 16 = 110", "7 * 17 = 117", "7 * 18 = 124", "7 * 19 = 131", "7 * 20 = 140"];
            
            print(seven)
            
          //  print("7 * 1 = 7 \n7 * 2 = 14 \n7 * 3 = 21 \n7 * 4 = 28 \n7 * 5 = 35 \n7 * 6 = 42 \n7 * 7 = 49 \n7 * 8 = 56 \n7 * 9 = 63 \n7 * 10 = 70 \n7 * 11 = 77 \n7 * 12 = 84 \n7 * 13 = 91 \n7 * 14 = 98 \n7 * 15 = 104 \n7 * 16 = 110 \n7 * 17 = 117 \n7 * 18 = 124 \n7 * 19 = 131 \n7 * 20 = 140 ")
        
    }
        
        if sliders.value >= 8 {
       
            let eight = ["8 * 1 = 8", "8 * 2 = 16", "8 * 3 = 24", "8 * 4 = 32", "8 * 5 = 40", "8 * 6 = 48", "8 * 7 = 56", "8 * 8 = 64", "8 * 9 = 72", "8 * 10 = 80", "8 * 11 = 88", "8 * 12 = 96", "8 * 13 = 104", "8 * 14 = 112", "8 * 15 = 120", "8 * 16 = 128", "8 * 17 = 136", "8 * 18 = 144", "8 * 19 = 152", "8 * 20 = 160"];
            
            print(eight);

           // print("8 * 1 = 8 \n8 * 2 = 16 \n8 * 3 = 24 \n8 * 4 = 32 \n8 * 5 = 40 \n8 * 6 = 48 \n8 * 7 = 56 \n8 * 8 = 64 \n8 * 9 = 72 \n8 * 10 = 80 \n8 * 11 = 88 \n8 * 12 = 96 \n8 * 13 = 104 \n8 * 14 = 112 \n8 * 15 = 120 \n8 * 16 = 128 \n8 * 17 = 136 \n8 * 18 = 144 \n8 * 19 = 152 \n8 * 20 = 160 ")
        
    }
        
        if sliders.value >= 9 {
        
            let nine = ["9 * 1 = 9", "8 * 2 = 18", "9 * 3 = 27", "9 * 4 = 36", "9 * 5 = 45", "9 * 6 = 54", "9 * 7 = 63", "9 * 8 = 72", "9 * 9 = 81", "9 * 10 = 90", "9 * 11 = 99", "9 * 12 = 108", "8 * 13 = 117", "9 * 14 = 126", "9 * 15 = 135", "9 * 16 = 144", "9 * 17 = 153", "9 * 18 = 162", "9 * 19 = 171", "9 * 20 = 180"];
            
            print(nine);
            
            //print("9 * 1 = 9 \n8 * 2 = 18 \n9 * 3 = 27 \n9 * 4 = 36 \n9 * 5 = 45 \n9 * 6 = 54 \n9 * 7 = 63 \n9 * 8 = 72 \n9 * 9 = 81 \n9 * 10 = 90 \n9 * 11 = 99 \n9 * 12 = 108 \n8 * 13 = 117 \n9 * 14 = 126 \n9 * 15 = 135 \n9 * 16 = 144 \n9 * 17 = 153 \n9 * 18 = 162 \n9 * 19 = 171 \n9 * 20 = 180 ")
        
    }
        
        if sliders.value >= 10 {
       
            let ten = ["10 * 1 = 10", "20 * 2 = 20", "10 * 3 = 30", "10 * 4 = 40", "10 * 5 = 50", "10 * 6 = 60", "10 * 7 = 70", "10 * 8 = 80", "10 * 9 = 90", "10 * 10 = 100", "10 * 11 = 110", "10 * 12 = 120", "10 * 13 = 130", "10 * 14 = 140", "10 * 15 = 150", "10 * 16 = 160", "10 * 17 = 170", "10 * 18 = 180", "10 * 19 = 190", "10 * 20 = 200"];
            
            print(ten);
            
        //    print("10 * 1 = 10 \n20 * 2 = 20 \n10 * 3 = 30 \n10 * 4 = 40 \n10 * 5 = 50 \n10 * 6 = 60 \n10 * 7 = 70 \n10 * 8 = 80 \n10 * 9 = 90 \n10 * 10 = 100 \n10 * 11 = 110 \n10 * 12 = 120 \n10 * 13 = 130 \n10 * 14 = 140 \n10 * 15 = 150 \n10 * 16 = 160 \n10 * 17 = 170 \n10 * 18 = 180 \n10 * 19 = 190 \n10 * 20 = 200 ")
            
    }
        
        if sliders.value >= 11 {
        
            let eleven = ["11 * 1 = 11", "11 * 2 = 22", "11 * 3 = 33", "11 * 4 = 44", "11 * 5 = 55", "11 * 6 = 66", "11 * 7 = 77", "11 * 8 = 88", "11 * 9 = 99", "11 * 10 = 110", "11 * 11 = 121", "11 * 12 = 132", "11 * 13 = 143", "11 * 14 = 154", "11 * 15 = 165", "11 * 16 = 176", "11 * 17 = 187", "11 * 18 = 198", "11 * 19 = 209", "11 * 20 = 220"];
            
            print(eleven);
            
        //    print("11 * 1 = 11 \n11 * 2 = 22 \n11 * 3 = 33 \n11 * 4 = 44 \n11 * 5 = 55 \n11 * 6 = 66 \n11 * 7 = 77 \n11 * 8 = 88 \n11 * 9 = 99 \n11 * 10 = 110 \n11 * 11 = 121 \n11 * 12 = 132 \n11 * 13 = 143 \n11 * 14 = 154 \n11 * 15 = 165 \n11 * 16 = 176 \n11 * 17 = 187 \n11 * 18 = 198 \n11 * 19 = 209 \n11 * 20 = 220 ")
            
        }
        if sliders.value >= 12 {
        
            let twelve = ["12 * 1 = 12", "12 * 2 = 24", "12 * 3 = 36", "12 * 4 = 48", "12 * 5 = 60", "12 * 6 = 72", "12 * 7 = 84", "12 * 8 = 96", "12 * 9 = 108", "12 * 10 = 120", "12 * 11 = 132", "12 * 12 = 144", "12 * 13 = 156", "12 * 14 = 168", "12 * 15 = 180", "12 * 16 = 192", "12 * 17 = 204", "12 * 18 = 216", "12 * 19 = 228", "12 * 20 = 240"];
            
            print(twelve);
            
       //     print("12 * 1 = 12 \n12 * 2 = 24 \n12 * 3 = 36 \n12 * 4 = 48 \n12 * 5 = 60 \n12 * 6 = 72 \n12 * 7 = 84 \n12 * 8 = 96 \n12 * 9 = 108 \n12 * 10 = 120 \n12 * 11 = 132 \n12 * 12 = 144 \n12 * 13 = 156 \n12 * 14 = 168 \n12 * 15 = 180 \n12 * 16 = 192 \n12 * 17 = 204 \n12 * 18 = 216 \n12 * 19 = 228 \n12 * 20 = 240 ")
    }
        
        if sliders.value >= 13 {
       
            let thirteen = ["13 * 1 = 13", "13 * 2 = 26", "13 * 3 = 39", "13 * 4 = 52", "13 * 5 = 65", "13 * 6 = 78", "13 * 7 = 91", "13 * 8 = 104", "13 * 9 = 117", "13 * 10 = 130", "13 * 11 = 143", "13 * 12 = 156", "13 * 13 = 169", "13 * 14 = 182", "13 * 15 = 195", "13 * 16 = 208", "13 * 17 = 211", "13 * 18 = 224", "13 * 19 = 237", "13 * 20 = 250"];
            
            print(thirteen);
            
         //   print("13 * 1 = 13 \n13 * 2 = 26 \n13 * 3 = 39 \n13 * 4 = 52 \n13 * 5 = 65 \n13 * 6 = 78 \n13 * 7 = 91 \n13 * 8 = 104 \n13 * 9 = 117 \n13 * 10 = 130 \n13 * 11 = 143 \n13 * 12 = 156 \n13 * 13 = 169 \n13 * 14 = 182 \n13 * 15 = 195 \n13 * 16 = 208 \n13 * 17 = 211 \n13 * 18 = 224 \n13 * 19 = 237 \n13 * 20 = 250 ")
    }
        
        if sliders.value >= 14 {
            
            let fourteen = ["14 * 1 = 14", "14 * 2 = 28", "14 * 3 = 42", "14 * 4 = 56", "14 * 5 = 70", "14 * 6 = 84", "14 * 7 = 98", "14 * 8 = 112", "14 * 9 = 126", "14 * 10 = 140", "14 * 11 = 154", "14 * 12 = 168", "14 * 13 = 182", "14 * 14 = 196", "14 * 15 = 220", "14 * 16 = 234", "14 * 17 = 248", "14 * 18 = 262", "14 * 19 = 276", "14 * 20 = 290 "];
            
            print(fourteen);
            
            
        //print("14 * 1 = 14 \n14 * 2 = 28 \n14 * 3 = 42 \n14 * 4 = 56 \n14 * 5 = 70 \n14 * 6 = 84 \n14 * 7 = 98 \n14 * 8 = 112 \n14 * 9 = 126 \n14 * 10 = 140 \n14 * 11 = 154 \n14 * 12 = 168 \n14 * 13 = 182 \n14 * 14 = 196 \n14 * 15 = 220 \n14 * 16 = 234 \n14 * 17 = 248 \n14 * 18 = 262 \n14 * 19 = 276 \n14 * 20 = 290 ")
    }
        
        if sliders.value >= 15 {
        
            let fifteen = ["15 * 1 = 15", "15 * 2 = 30", "15 * 3 = 45", "15 * 4 = 60", "15 * 5 = 75", "15 * 6 = 90", "15 * 7 = 105", "15 * 8 = 120", "15 * 9 = 135", "15 * 10 = 150", "15 * 11 = 165", "15 * 12 = 180", "15 * 13 = 195", "15 * 14 = 210", "15 * 15 = 225", "15 * 16 = 240", "15 * 17 = 255", "15 * 18 = 270", "15 * 19 = 285", "15 * 20 = 300"];
            
            print(fifteen);
            
           // print("15 * 1 = 15 \n15 * 2 = 30 \n15 * 3 = 45 \n15 * 4 = 60 \n15 * 5 = 75 \n15 * 6 = 90 \n15 * 7 = 105 \n15 * 8 = 120 \n15 * 9 = 135 \n15 * 10 = 150 \n15 * 11 = 165 \n15 * 12 = 180 \n15 * 13 = 195 \n15 * 14 = 210 \n15 * 15 = 225 \n15 * 16 = 240 \n15 * 17 = 255 \n15 * 18 = 270 \n15 * 19 = 285 \n15 * 20 = 300 ")
    }
        
        if sliders.value >= 16 {
        
            let sixteen = ["16 * 1 = 16", "16 * 2 = 32", "16 * 3 = 48", "16 * 4 = 64", "16 * 5 = 80", "16 * 6 = 96", "16 * 7 = 112", "16 * 8 = 128", "16 * 9 = 144", "16 * 10 = 160", "16 * 11 = 176", "16 * 12 = 192", "16 * 13 = 208", "16 * 14 = 224", "16 * 15 = 240", "16 * 16 = 256", "16 * 17 = 272", "16 * 18 = 288", "16 * 19 = 304", "16 * 20 = 320"];
            
            print(sixteen);
            
            
            //print("16 * 1 = 16 \n16 * 2 = 32 \n16 * 3 = 48 \n16 * 4 = 64 \n16 * 5 = 80 \n16 * 6 = 96 \n16 * 7 = 112 \n16 * 8 = 128 \n16 * 9 = 144 \n16 * 10 = 160 \n16 * 11 = 176 \n16 * 12 = 192 \n16 * 13 = 208 \n16 * 14 = 224 \n16 * 15 = 240 \n16 * 16 = 256 \n16 * 17 = 272 \n16 * 18 = 288 \n16 * 19 = 304 \n16 * 20 = 320 ")
    }
        
        if sliders.value >= 17 {
        
            let seventeen = ["17 * 1 = 17", "17 * 2 = 34", "17 * 3 = 51", "17 * 4 = 68", "17 * 5 = 85", "17 * 6 = 102", "17 * 7 = 109", "17 * 8 = 126", "17 * 9 = 143", "17 * 10 = 160", "17 * 11 = 177", "17 * 12 = 194", "17 * 13 = 211", "17 * 14 = 218", "17 * 15 = 235", "17 * 16 = 252", "17 * 17 = 269", "17 * 18 = 286", "17 * 19 = 303", "17 * 20 = 320"];
            
            print(seventeen);
            
         //   print("17 * 1 = 17 \n17 * 2 = 34 \n17 * 3 = 51 \n17 * 4 = 68 \n17 * 5 = 85 \n17 * 6 = 102 \n17 * 7 = 109 \n17 * 8 = 126 \n17 * 9 = 143 \n17 * 10 = 160 \n17 * 11 = 177 \n17 * 12 = 194 \n17 * 13 = 211 \n17 * 14 = 218 \n17 * 15 = 235 \n17 * 16 = 252 \n17 * 17 = 269 \n17 * 18 = 286 \n17 * 19 = 303 \n17 * 20 = 320 ")
    }
        

        if sliders.value >= 18 {
        
            let eighteen = ["18 * 1 = 18", "18 * 2 = 36", "18 * 3 = 54", "18 * 4 = 72", "18 * 5 = 90", "18 * 6 = 108", "18 * 7 = 126", "18 * 8 = 144", "18 * 9 = 162", "18 * 10 = 180", "18 * 11 = 198", "18 * 12 = 216", "18 * 13 = 234", "18 * 14 = 252", "18 * 15 = 270", "18 * 16 = 288", "18 * 17 = 306", "18 * 18 = 324", "18 * 19 = 342", "18 * 20 = 360"];
            
            print(eighteen);
            
        //    print("18 * 1 = 18 \n18 * 2 = 36 \n18 * 3 = 54 \n18 * 4 = 72 \n18 * 5 = 90 \n18 * 6 = 108 \n18 * 7 = 126 \n18 * 8 = 144 \n18 * 9 = 162 \n18 * 10 = 180 \n18 * 11 = 198 \n18 * 12 = 216 \n18 * 13 = 234 \n18 * 14 = 252 \n18 * 15 = 270 \n18 * 16 = 288 \n18 * 17 = 306 \n18 * 18 = 324 \n18 * 19 = 342 \n18 * 20 = 360 ")
    }
        
        if sliders.value >= 19 {
       
            let nineteen = ["19 * 1 = 19", "19 * 2 = 38", "19 * 3 = 57", "19 * 4 = 76", "19 * 5 = 95", "19 * 6 = 114", "19 * 7 = 133", "19 * 8 = 152", "19 * 9 = 171", "19 * 10 = 190", "19 * 11 = 209", "19 * 12 = 228", "19 * 13 = 247", "19 * 14 = 266", "19 * 15 = 285", "19 * 16 = 304", "19 * 17 = 323", "19 * 18 = 342", "19 * 19 = 361", "19 * 20 = 380"];
            
            print(nineteen);
            
     //       print("19 * 1 = 19 \n19 * 2 = 38 \n19 * 3 = 57 \n19 * 4 = 76 \n19 * 5 = 95 \n19 * 6 = 114 \n19 * 7 = 133 \n19 * 8 = 152 \n19 * 9 = 171 \n19 * 10 = 190 \n19 * 11 = 209 \n19 * 12 = 228 \n19 * 13 = 247 \n19 * 14 = 266 \n19 * 15 = 285 \n19 * 16 = 304 \n19 * 17 = 323 \n19 * 18 = 342 \n19 * 19 = 361 \n19 * 20 = 380 ")
    }
        
        if sliders.value >= 20 {
       
            let twenty = ["20 * 1 = 20", "20 * 2 = 40", "20 * 3 = 60", "20 * 4 = 80", "20 * 5 = 100", "20 * 6 = 120", "20 * 7 = 140", "20 * 8 = 160", "20 * 9 = 180", "20 * 10 = 200", "20 * 11 = 220", "20 * 12 = 240", "20 * 13 = 260", "20 * 14 = 280", "20 * 15 = 300", "20 * 16 = 320", "20 * 17 = 340", "20 * 18 = 360", "20 * 19 = 360", "20 * 20 = 380"];
            
            print(twenty);
            
          //  print("20 * 1 = 20 \n20 * 2 = 40 \n20 * 3 = 60 \n20 * 4 = 80 \n20 * 5 = 100 \n20 * 6 = 120 \n20 * 7 = 140 \n20 * 8 = 160 \n20 * 9 = 180 \n20 * 10 = 200 \n20 * 11 = 220 \n20 * 12 = 240 \n20 * 13 = 260 \n20 * 14 = 280 \n20 * 15 = 300 \n20 * 16 = 320 \n20 * 17 = 340 \n20 * 18 = 360 \n20 * 19 = 360 \n20 * 20 = 380 ")
    }
        
        
        func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view.
    }


}

}

3 个答案:

答案 0 :(得分:0)

您不需要控制台来执行此操作,只需要使用tableView的正确数据源即可。 在您的代码中,为数据源设置一个常量。

let zero = [...]  
rows.textLabel?.text = zero[indexPath.row]

tableView的值将始终相同(“零”),并且您无法更改。

如果我们坚持使用您的结构:

1,在控制器顶部创建一个本地变量

var dataSource: [String] = []

2,将dataSource变量值设置为所需的值。示例:

 if sliders.value == 0 {
    dataSource = ["0 * 1 = 0", "0 * 2 = 0", "0 * 3 = 0", "0 * 4 = 0", "0 * 5 = 0", "0 * 6 = 0", "0 * 7 = 0", "0 * 8 = 0", "0 * 9 = 0", "0 * 10 = 0", "0 * 11 = 0", "0 * 12 = 0", "0 * 13 = 0", "0 * 14 = 0", "0 * 15 = 0", "0 * 16 = 0", "0 * 17 = 0", "0 * 18 = 0", "0 * 19 = 0", "0 * 20 = 0"]
    }

3,在tableview cellForRowAt方法中,将数据源更改为dataSource:

 rows.textLabel?.text = dataSource[indexPath.row]

但是:

1,您应该至少创建一个switch语句,而不要创建这些if slider.value

2,您不需要在行尾使用;

2,我认为您应该创建一个函数来生成数据源,如下所示:

func changeDataSource(input: Float) {
dataSource.removeAll()
    var i = 0
    while i <= 20 {
        dataSource.append("\(Int(slider.value)) * 1 = \(Int(slider.value) * 1)")
        i += 1
        print(dataSource)
    }
}

答案 1 :(得分:0)

我可以看到Dris已经给出了很好的答案。但是我也将自已发布。

我的方法与Dris在回答结尾所建议的非常相似。

看看这个。

class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {

@IBOutlet weak var label: UILabel!
@IBOutlet weak var tableview: UITableView!
@IBOutlet weak var sliders: UISlider!

var arr:[String] = []

override func viewDidLoad() {
    super.viewDidLoad()
    if arr.count == 0 {
        addDataToArr(slider: 0)
        label.text = "0"
    }
}

@IBAction func slider(_ sender: UISlider) {
    addDataToArr(slider: sender.value)
    label.text = "\(Int(sender.value))"
    tableview.reloadData()
}

func addDataToArr(slider: Float) {
    arr = []
    for i in  1...20 {
        let sValue = Int(slider)
        let result = sValue * i
        arr.append("\(sValue) * \(i) = \(result)")
    }
}

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return 20
}

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let rows = UITableViewCell(style: UITableViewCell.CellStyle.default, reuseIdentifier: "tvtabletest")
    
    rows.textLabel?.text = arr[indexPath.row]
    
    return rows;
}
}

enter image description here

答案 2 :(得分:0)

这可以变得更加简单。

您根本不需要像这样的数组。 拥有一个名为currentSliderValue的变量,并在滑块移动后将其设置为最新值。

1 numberOfRowsInSection与20相同,因为有20个单元格。

    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return 20
    }

2 。只需在cellForRowAt indexPath中动态创建字符串即可。我正在使用这种方法,因为这是一个测试项目。您可以制作数据源阵列,也可以将MVVM用于更复杂的项目。

    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        
        let row = UITableViewCell(style: UITableViewCell.CellStyle.default, reuseIdentifier: "tvtabletest")
        let result = currentSliderValue * indexPath.row
        row.textLabel?.text = "\(currentSliderValue) * \(indexPath.row) = \(result)"
        return row;
    }

这将为所有单元格提供所需的文本。

3 。每次currentSliderValue更改时,请在设置值后调用tableView.reloadData(),以便单元格现在具有新值。

希望,您已经将dataSource设置为tableView的ViewController类,以便它可以正常工作。

在需要的地方使用循环,手动检查该值是否可扩展。 这应该超级简单。如有疑问,请发表评论:)