[英]ios swift: What is the apporach way to reload a tableView?
我使用帶有靜態單元格的tableView
進行測驗游戲。
因此,我將所有問題排在一個數組中,並希望進行遍歷。
當用戶回答了一個問題后,我想在同一tableView
向他顯示下一個問題。 因此,我需要將數據從tableView
傳遞到“自身”,以更新問題計數器和其他一些東西,等等。
用戶具有“下一步”按鈕以轉到下一個問題。
你們建議我做什么?
self.tableView.reloadData()
不能解決,因為我必須傳輸數據嗎? 必須是segue,還是?
我試圖讓按鈕“ next”作為IBAction
對其本身執行監視,但是隨后發生的監視沒有執行IBAction中的代碼。
感謝您的任何想法!
編輯:
這些變量需要更新:
var totalCardsInt: Int = 0
var currentCardInt: Int = 0
var currentDisplayedCardInt: Int = 1
如果我正在使用self.tableView.reloadData()
在什么時候我必須更新這些變量,以便在重新加載后對其進行更新?
抱歉...我只是有點迷路了...
您應該使用self.tableView.reloadData()
重新加載表,但是在此之前,您應該修改數據源(用於用數據填充單元格的數組或字典),以便表在重新加載時加載新數據。
我不明白為什么不能使用self.tableView.reloadData()
? 單元格應反映您的控制器數據模型的內容。 因此,如果要顯示新的問題數據集,請將單元格的數據設置為新的問題集,然后重新加載。
如果您想擁有問題的歷史記錄,請給我們一個問題數組,並在當前問題的數組中使用索引。 使單元格使用問題索引來填充單元格視圖。 然后,您可以通過更改每次重新加載問題的索引來前進和后退。
我必須回答自己的問題-因為我的想法完全錯了...有時候睡個好覺是有道理的...
我可以使用tableView
。 我要做的就是以正確的順序獲取“時間軸”。 無需重新加載tableView
我只需要清除靜態單元格並填寫新數據即可。
我認為將代碼粘貼到此處有點太多,但是總而言之,這是我的時間表:
將所有問題(及其答案)加載到數組中
將數據填寫到視圖中,例如 顯示問題和可能的答案
添加IBAction,證明答案並增加當前數組索引+1。 檢查當前==總計數,然后轉到最終視圖說“完成”
重新調用Nr.2以顯示下一個問題
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.