ios - 将 "activity indicator"添加到TableView并在Swift中恢复为 "disclosure indicator"

标签 ios swift uitableview uiactivityindicatorview

我有一个 TableView,每个单元格的附件都设置为“披露指示器”,它工作正常。

然后,我决定在使用外部来源的数据更新每个单元格时添加一个事件指示器。为此,我设置了:

cell.accessoryView = UIActivityIndicatorView(activityIndicatorStyle: .Gray)

当我完成从外部来源加载数据后,我丢失了“披露指示符”(单元格右侧的箭头)。我应该将“cell.accessoryView”恢复到什么位置?

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

    let item = items[indexPath.row]
    var cell = self.tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath) as! UITableViewCell

    // SET ACTIVITY INDICATOR HERE
    if cell.accessoryView == nil {
        let indicator = UIActivityIndicatorView(activityIndicatorStyle: .Gray)
        cell.accessoryView = indicator
    }

    let indicator = cell.accessoryView as! UIActivityIndicatorView

    // ... some code here ...

    switch (item.state) {

        case .New:
            indicator.startAnimating()
            self.fetchExternalData(item, indexPath:indexPath)

        case .Downloaded:
            indicator.stopAnimating()

            // I'D LIKE TO RESTORE THE DISCLOSURE INDICATOR HERE
            cell.accessoryType = UITableViewCellAccessoryType.DisclosureIndicator
            // cell.accessoryView = ???
    }

    return cell
}

最佳答案

哎呀,我只是尝试设置“cell.accessoryView = nil”并且它有效..我应该在发布之前想到这一点:-(

关于ios - 将 "activity indicator"添加到TableView并在Swift中恢复为 "disclosure indicator",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32422929/

相关文章:

ios - 如何在 Swift 中将按钮图像设置为 nil?

iphone - 使用发送者标签在UIbutton单击时更新UITableViewCell的标签

objective-c - Sprite 效应ipad

ios - 来自 .xib 文件的自定义 UITableViewCell

ios - 如何在 Material-UI 中以与 iOS UITableView 中相同的方式设置 ListSubheader 的样式?

ios - 如何使用按钮处理 UITableViewCell 中的多点触控?

ios - 我是否必须验证每个 SKPaymentTransaction 订阅的收据?

ios - Firebase observeSingleEvent 保留在内存中

ios - UIScrollView 高度不根据 View 大小动态更新?

swift - 彩色动画