簡體   English   中英

重新加載部分時沒有動畫的Tableview仍然抖動

[英]Tableview with no animation still jitters when I reload section

在表格視圖的部分中。 我有一些可選的行。 在該部分的標題內,我有一個Deselect All按鈕。

如果deselect all某行,則需要啟用deselect all按鈕;如果沒有選擇任何行,則需要禁用該按鈕。 通過讀取布爾值可以啟用/禁用該按鈕。 我在該布爾值上有一個didSet

var shouldEnableDeselectButton = false
    {
        didSet{
            if oldValue != shouldEnableDeselectButton{
                DispatchQueue.main.async {
                    self.notesTable.reloadSections([self.indexofFilter], with: .none)
                }
            }
        }
    }
  • 如果我在didSet絕對不執行任何操作,則只能通過出隊列/向上滾動或向下滾動並離開屏幕來進行更新。 見下文:

在此處輸入圖片說明

  • 如果我執行self.notesTable.reloadSections([someSection], with: .none)則它更長的時間要求節標題出隊。 但是,如果我選擇了最后幾行之一,則會嚴重抖動:請參見下文:

在此處輸入圖片說明

我在網上看了看,發現解決方案中提到的Reload tableview部分沒有滾動或動畫,但它們仍然抖動

需要做兩件事:

  1. 獲取對headerView的引用/指針。 例如這個答案。

  2. 將按鈕作為屬性 我最初只是將其作為子視圖使用。 那還不夠! 為此,我將sectionHeader設置為UITableViewHeaderFooterView子類,然后將按鈕添加為屬性。

然后,我isEnabled更改按鈕的isEnabled屬性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM