Je travaille sur un pager de données personnalisé pour un contrôle google maps personnalisé. Le contrôle doit déterminer quelle plage de pages afficher. Par exemple, si l'utilisateur se trouve à la page 6, le contrôle doit afficher les pages 1 à 10. Si l'utilisateur est à la page 37, le contrôle doit afficher les pages 30 à 40.Algorithme de pagination personnalisé pour calculer les pages à afficher
Les variables dont je dispose sont :
X - total des résultats (points sur la carte)
Y - la taille de la page en cours. c'est-à-dire le nombre de points par page.
Z - La page actuelle affichée
Q - Le nombre de numéros de page pour afficher (const de 10)
Je suis venu avec:
Démarrage Index = Z - (Z% Q)
Index Mettre fin à = Z - (Z% Q) + Q
Ceci, cependant, ne fonctionne pas lorsque la page en cours est inférieur à 10. Il a également ne comprend pas si une page maximum est atteinte, c'est-à-dire que nous affichons toujours une plage complète de 10. Cependant, si nous affichons la plage 30-40, la dernière page pourrait être 38.
Si quelqu'un peut venir avec un algorithme plus élégant, il serait appre cité.
Et si vous deviez afficher la page 20? Serait-ce 10-20 ou 20-30? –
Excuses cela devrait être 11-20, 21-30 etc. –