web-dev-qa-db-fra.com

Préférez les gros titres et RefreshControl ne fonctionne pas bien

J'utilise ce tutorial pour implémenter un comportement d'extraction avec l'actualisation RefreshControl. J'utilise un Navigation Bar. Lorsque vous utilisez des titres normaux, tout fonctionne bien. Mais, lorsque vous utilisez "Préférer les gros titres", cela ne fonctionne pas correctement, comme vous pouvez le voir dans les vidéos suivantes. Quelqu'un sait pourquoi? Le seul changement entre les vidéos est la vérification du storyboard dans "Préférer les gros titres".

 With "Prefer big titles"  With normal title

8
Damia Fuentes

À la fin, ce qui a fonctionné pour moi a été:

  • Afin de corriger le bogue disparaissant de la barre de progression RefreshControl avec les gros titres:

    self.extendedLayoutIncludesOpaqueBars = true
    
  • Afin de corriger le décalage de la liste après refreshcontrol.endRefreshing():

    let top = self.tableView.adjustedContentInset.top
    let y = self.refreshControl!.frame.maxY + top
    self.tableView.setContentOffset(CGPoint(x: 0, y: -y), animated:true)
    
3
Damia Fuentes

Si vous utilisiez tableView.tableHeaderView = refreshControl ou tableView.addSubView(refreshControl), vous devriez essayer d'utiliser tableView.refreshControl = refreshControl

2
atish vishwakarma

J'ai le même problème et aucune des autres réponses n'a fonctionné pour moi.

Je me suis rendu compte que le fait de changer la contrainte du haut de la vue de la zone safe à la superview corrigeait cet étrange bogue.

Assurez-vous également que la valeur constante de cette contrainte est 0 ????.

 if using storyboard

0
Bruno Cunha