如何在TableView中创建进度视图?

时间:2017-09-16 16:40:17

标签: swift tableview uiprogressview

我试图在TableView上制作进度视图。

我成功创建了进度视图,但如果动画为真,则条形消失,如果为假条形条已满,则我无法理解为什么。

这是我的代码:

这是我的附加方法:

if  formazione == formazione {
        guestInfoList.append("Formazione: \(formazione)%")
    }

这里是完整的出队功能:

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    var countdowncell = tableView.dequeueReusableCell(withIdentifier: "countdowncell", for: indexPath)

    //countdown
    if indexPath.row == 9{
        countdowncell.textLabel?.text = calcolaCountdown()
    }else{
        countdowncell.textLabel?.text = guestInfoList[indexPath.row]
    }

    //Creazione Progress View
    if indexPath.row == 12 {
        cell = UITableViewCell(style: .default, reuseIdentifier: "Cell")
        let progressView = UIProgressView(progressViewStyle: .default)
        //setting height of progressView
        let transform = CGAffineTransform(scaleX: cell.frame.size.width, y: cell.frame.size.height)
        progressView.transform = transform
        cell.contentView.addSubview(progressView)
    //**//inserisci valore formazione
        progressView.setProgress(Float(formazione), animated: false)
    }

    return countdowncell
}

Ps:如果我想将进度视图放在单元格的右侧?

修改

最后我做到了!谢谢你!

        if indexPath.row == 12 {
        var cell = tableView.dequeueReusableCell(withIdentifier: "formprogresscell", for: indexPath)
        let progressView = UIProgressView(progressViewStyle: .default)
        //setting height of progressView
        progressView.frame = CGRect(x: 230, y: 20, width: 130, height: 130)
        progressView.progress += 0.5
        progressView.rightAnchor.accessibilityActivate()
        //**//inserisci valore formazione
        progressView.setProgress(Float(formazione), animated: true)
        progressView.progressTintColor = UIColor.red
        cell.textLabel?.text = "Formazione: \(formvalue)%"
        cell.contentView.addSubview(progressView)
    }

1 个答案:

答案 0 :(得分:1)

问题在于您在创建后使用进度视图执行的操作:

http://localhost:8983/solr/get?ids=id1,id2,id3

您未能let progressView = UIProgressView(progressViewStyle: .default) 任何progressView。因此它没有。特别是,它没有宽度。因此它是看不见的。

给它一个框架可以解决你的问题:你给视图一个宽度,然后你给它一个原点,这样你就可以把它放在你想要的内容视图中。 (但实际上你应该使用自动布局,而不是框架。)