过滤tableView行不会重新加载tableView

时间:2016-08-02 19:06:30

标签: ios swift filter tableview

我的第一个iOS应用程序适用于简单的自定义单元格,但过滤tableView行的增强功能会导致延迟和挫败感。在线搜索过滤器行的帮助,在Apple Developer指南中读取dataSource和委托协议,到目前为止没有运气。

使用滑块值刷新表格行。从行数组(100个项目)到linefilter数组(20)的提取数据。然后想刷新/重新加载tableview。

Slider声明为0,所有行数组项都显示出来。移动滑块不会改变显示。如果滑块声明为1,则显示20个过滤项目。

Apple / Xcode / Swift相当新,所以没有Objective C知识。

任何答案都可能帮助我实现目标。 吉姆L

相关的代码选择:

 @IBAction func moveSlider(sender: AnyObject) {
      // Non-continuous  ******
        _ = false
      // integer 0 to 5  ******
        let slider = Int(lineSlider.value)
        }
    }

 // Global Variable   ******
 var slider = 0

 func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int
    {
        if slider == 0  {        
            return self.line.count
        } else  {  
           return self.linefilter.count
        }
    }

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
    {        
        let cell = self.tableView.dequeueReusableCellWithIdentifier("cell") as! myTableViewCell
        if slider == 0  {
            cell.myCellLabel.text = line[indexPath.row]
        } else {
            cell.myCellLabel.text = linefilter[indexPath.row]
        }
        cell.myImageView.image = UIImage(named: img[indexPath.row])
        return cell          
    }
    tableView.reloadata()

1 个答案:

答案 0 :(得分:0)

尝试放

tableView.reloadData() 
像这样

let slider = Int(lineSlider.value)
     tableView.reloadData()
}
你的moveSlider函数中的