2つのビューがあります。最初のビューにはフォルダ名と検索ボタンのリストがあります。 (tableview)、2番目のビューのユーザーは私のサーバー内のファイルを検索し、それをダウンロードすることができます。 2番目のテーブルビューには、ファイル名、進行状況バー、およびダウンロードボタンがあります。2番目の負荷の後のテーブルビューの更新セルの値
最初のビューでユーザーが検索ボタンをクリックし、ファイル名を検索してダウンロードボタンをクリックすると、ダウンロードボタンの進行状況が表示されます。このプロセスは動作しており、進捗値の変更を確認できます。
最初のビューに戻って2番目のビューを開いてダウンロードプロセスを開始すると、プログレスバーの値を変更できません。
私のコードが動作しているのを見て、テーブルビューの行を更新しようとしましたが、そうではありません。 (私のコードはcellForRowAt indexPathメソッドを呼び出すことができます)
私のコードには何がありますか? テーブルビュー行の値を更新できないのはなぜですか?
私の更新コード:
let indexPath = IndexPath(row: 2, section: 0)
tableView.beginUpdates()
self.tableView.reloadRows(at: [indexPath], with: UITableViewRowAnimation.automatic)
tableView.endUpdates()
私は最初の呼び出しリロードテーブルビューの行よりもモデルを更新しています。コード:
dataArray[cellNum].progressValue = taskProgress
//テーブルビューcellforRowAt:
let identifier = "Cell"
let cell = tableView.dequeueReusableCell(withIdentifier: identifier, for: indexPath) as! SearchListCell
cell.circularProgress.angle = dataArray[indexPath.row].progressValue
cell.titleLabel.text = dataArray[indexPath.row].title
return cell
はまた、私はと更新行を試してみました:
let cell = self.tableView.cellForRow(at: indexPath) as! SearchListCell!
let progressInfo = self.dataArray[indexPath.row]
cell?.circularProgress.angle = progressInfo.progressValue
コード作業とUI画像を追加します。 –