2017-09-07 6 views
-2

Voulez-vous ajouter le pull pour actualiser en bas de tableview.Comment faire tirer à actualiser dans tableview buttom dans iOS swift

D'abord veulent montrer les nombres tableview 100 à 90.

Ensuite, ajoutez la traction pour se rafraîchir en bas de tableview. Tirez-le pour afficher 80 à 70, puis actualisez 70 à 60, puis actualisez 50 à 40 ... etc. Final 1 à 10 signifie que l'affichage est arrêté "aucune donnée disponible". comment y parvenir. aidez-moi merci avance.

Voici mon code.

@IBOutlet weak var dataTbl: UITableView! 
    var numbers: [Any] = ["90","91","92","93","94","95","96","97","98","99","100"] // display first 100 to 90. 

Chargé dans la vue de table.

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { 
     return self.numbers.count 
    } 



func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { 

     let cell:UITableViewCell = self.dataTbl.dequeueReusableCell(withIdentifier: cellReuseIdentifier) as UITableViewCell! 
     cell.textLabel?.text = self.numbers[indexPath.row] as? String 

     return cell 
    } 

recherché dans Google pour ajouter le rafraîchissement dans buttom de tableview. J'ai eu ce code.

let spinner = UIActivityIndicatorView(activityIndicatorStyle: .gray) 
spinner.color = UIColor.darkGray 
spinner.hidesWhenStopped = true 
tableView.tableFooterView = spinner 

show spinner utilisant

spinner.startAnimating() 

cacher à l'aide

spinner.stopAnimating() 

En utilisant ce code comment faire tirer pour rafraîchir me aider.

+0

mais ne peut pas y parvenir. - signifie quoi ... –

+0

ce que vous voulez faire avec le code ci-dessus? – shahnilay86

+0

où vous appelez ceci 'let spinner = UIActivityIndicatorView (activityIndicatorStyle: .gray) spinner.color = UIColor.darkGray' –

Répondre

0

Vous devez utiliser le code ci-dessous,

func scrollViewDidScroll(_ scrollView: UIScrollView) { 
    if tableView.contentOffset.y >= (tableView.contentSize.height - tableView.frame.size.height) { 
      //you reached the bottom of tableview, you can append the other 10 numbers to array and do reload 
    } 
} 

Vous n'avez pas besoin d'ajouter UIScrollViewDelegate pour y parvenir, je l'espère UITableViewDelegate est suffisant. Comme UITableview hérite de la propriété de UIScrollView Hope this helps

2

Utilisation suivant délégué pour détecter la fin de la table et d'ajouter une logique de spinner avec pied de table.

func scrollViewDidScroll(_ scrollView: UIScrollView) { 
      if tableView.contentOffset.y >= (tableView.contentSize.height - tableView.frame.size.height) { 
        let spinner = UIActivityIndicatorView(activityIndicatorStyle: .gray) 
    spinner.color = UIColor.darkGray 
    spinner.hidesWhenStopped = true 
    tableView.tableFooterView = spinner 
      } 
     } 

Une fois que vous ajoutez ces entrées à votre source de données puis retirez le pied de page vue

tableView.tableFooterView = nil 
+0

comment actualiser les éléments 100 à 90, 90 à 80 , 80 à 70 – saravanar

+0

Si vous l'extrayez du serveur, vous devez envoyer un décalage au serveur pour extraire les 10 enregistrements suivants, lorsque vous obtenez une réponse du serveur, puis ajouter ces enregistrements à la source de données précédente – KavyaKavita