PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV Mobile 2024 → Affichage zone répété
Affichage zone répété
Iniciado por Monsieur AURAY-LORIVAL, 25,abr. 2017 20:59 - 9 respuestas
Miembro registrado
64 mensajes
Popularité : -1 (1 vote)
Publicado el 25,abril 2017 - 20:59
Bonjour,
J'ai un soucis d'affichage assez bizarre dans une zone répétée horizontale.
Je la remplis par programmation avec zonerépétéeajouteligne, ça marche très bien sur les 5-6 premières colonnes mais au bout d'un moment ça m'affiche toujours le même élément.
J'ai donc vérifié ce qui était mis dedans et pourtant tout les colonnes sont bien censées être différentes et le plus bizarre est que dès que je clique sur une des colonnes en double, ça m'affiche le bon contenu dans la colonne mais ça mélange toute la zone répétée alors qu'il y'a aucun code.

J'ai l'impression qu'au bout d'un moment l’élément de la colonne précédente se superpose sur le contenu des autres colonnes.
Comment corriger ce bug ?
Publicado el 26,abril 2017 - 13:23
Bonjour

Fais un projet de démo du problème : une fenêtre, une ZR, 10 lignes de
code fixe qui ajoutent dans la zr

Si tu peux reproduire le problème comme ca, transmet le tout au support
pour qu'ils corrigent.

Si par contre le problème n'est PAS dans le projet simple, tu pourras
comparer les 2 et trouver la cause

Cordialement


--
Fabrice Harari
Consultant WinDev, WebDev et WinDev Mobile International

A votre disposition : WXShowroom.com, WXReplication (open source) et
maintenant WXEDM (open source)

Plus d'information sur http://fabriceharari.com


Le 4/25/2017 à 12:59 PM, Monsieur AURAY-LORIVAL a écrit :
Bonjour,
J'ai un soucis d'affichage assez bizarre dans une zone répétée horizontale.
Je la remplis par programmation avec zonerépétéeajouteligne, ça marche
très bien sur les 5-6 premières colonnes mais au bout d'un moment ça
m'affiche toujours le même élément.
J'ai donc vérifié ce qui était mis dedans et pourtant tout les colonnes
sont bien censées être différentes et le plus bizarre est que dès que je
clique sur une des colonnes en double, ça m'affiche le bon contenu dans
la colonne mais ça mélange toute la zone répétée alors qu'il y'a aucun
code.

J'ai l'impression qu'au bout d'un moment l’élément de la colonne
précédente se superpose sur le contenu des autres colonnes.
Comment corriger ce bug ?
Miembro registrado
64 mensajes
Popularité : -1 (1 vote)
Publicado el 27,abril 2017 - 02:28
Alors j'ai avancé un peu, c'est bien un bug car j'ai refais un projet propre et idem.
J'ai essayé sur un autre téléphone (android 4.4.2) et ça marche mais pas très fluide. Enfaite quand je scroll sur la zone répétée en même temps il recharge en continu les colonnes qui s'affichent au défilement même si elles ont déjà été affichées. J'ai l'impression que le téléphone garde aucun cache de la zone répétée.
J'ai aussi remarqué que si j'active le paramètre "forcer le rendu gpu" du téléphone ça me refait le bug et si je le désactive ça marche comme expliqué au dessus.

Sur mon tel récent (android 7.1.1), le bug persiste, il ne recharge pas pendant le scroll contrairement à sur l'autre téléphone ducoup le contenu de ma ZR est mal affiché. J'ai essayé en activant et désactivant le rendu gpu, dans les deux cas ça bug.

D'autres idées ?

La galère ces zones répétées.
Mensaje modificado, 27,abril 2017 - 02:28
Miembro registrado
64 mensajes
Popularité : -1 (1 vote)
Publicado el 27,abril 2017 - 08:40
Pour créer le bug c'est simple, créer un nouveau projet android.
Créez une ZR horizontale ZR_Bug et mettez y un champs image (ajouté aussi en attribut de la ZR).

Ajoutez ce code à l'initialisation de la fenêtre:
Lien1 est une chaîne="http://www.msf-me.org/en/media/get/20100902_img-test.jpg"
Lien2 est une chaîne="http://www.crisboat.com/media/cache/tabCarousel/bundles/mvsite/images/img-test.jpg"

HTTPRequête(Lien1)
Image1 est une Image=HTTPDonneRésultat(httpRésultat)
HTTPRequête(Lien2)
Image2 est une Image=HTTPDonneRésultat(httpRésultat)

bAltern est un booléen=Faux

POUR i=1 A 16
SI bAltern = Faux ALORS
ZoneRépétéeAjouteLigne(ZR_Bug,Image1)
bAltern=Vrai
SINON
ZoneRépétéeAjouteLigne(ZR_Bug,Image2)
bAltern=Faux
FIN
FIN


Lancez l'appli sur votre téléphone (ne pas se fier à l'émulateur)
Si le slide de la zone répétéé est fluide et que l'image alterne une fois sur deux sur toute la ZR c'est bon. Si oui quelle version utilisez-vous ?
Personnellement, le bug d'affichage fait que sur la fin de la ZR ça n'alterne plus et que quand je clique sur la dernière colonne ça mélange tout.
Publicado el 27,abril 2017 - 18:22
Bonjour,
Test du code fait, c'est fluide.
version de WM 22 .. 52j
android 6.0 pour le mobile

il semble que parfois, cela soit bien de créer d'abord la ligne de la ZR , puis de la remplir

HTTPRequête(Lien1)
Image1 est une Image=HTTPDonneRésultat(httpRésultat)
HTTPRequête(Lien2)
Image2 est une Image=HTTPDonneRésultat(httpRésultat)
iind est un entier

bAltern est un booléen=Faux

POUR i=1 A 16
SI bAltern = Faux ALORS
iind = ZoneRépétéeAjouteLigne(ZR_BUG)
ZR_BUG[iind].ZRA_IMAGE = Image1
bAltern=Vrai
SINON
iind = ZoneRépétéeAjouteLigne(ZR_BUG)
ZR_BUG[iind].ZRA_IMAGE = Image2
bAltern=Faux
FIN
FIN

ZRA_IMAGE étant le nom de l'attribut

Cordialement
Christian
Miembro registrado
637 mensajes
Popularité : +36 (36 votes)
Publicado el 28,abril 2017 - 09:25
Bonjour,

Pour ceux qui rencontre le bug, pouvez-vous essayer ceci :

Dans le modifieur de la zone répétée, onglet détails, réutiliser les champs, la valeur par défaut est "Selon plateforme".
Forcez à un champ par ligne

Cela change quelque chose ?

Cdlt - Eric.

--
Eric DELATTRE
http://www.yoosite.fr
Miembro registrado
1.603 mensajes
Popularité : +64 (70 votes)
Publicado el 28,abril 2017 - 09:46
Bonjour,

J'ai déjà constaté par le passé des différences de comportement entre ZoneRépétéeAjouteLigne() (qui est conseillé) et ZoneRépétéeAjoute() mais je ne sais plus pour quel produit ni pour quelle version. Eh oui la mémoire...

--
Cordialement
François

http://intra.fr http://intrasoftware.fr
Publicado el 04,mayo 2017 - 00:01
J'ai (probablement) le même bug avec la dernière version 06F220052j.

- Pas de difference entre ZoneRépétéeAjouteLigne() et ZoneRépétéeAjoute.

- Pas de code dans la ZR

- Dans l'émulateur il affiche tous les images correctement après remplissage, mais quand je clique sur une ligne tous les images changent vers la dernière. Quand je debug l'attribut ZRA_IMAGE dans 'affichage d'une ligne' il affiche pour tous les indices la même image.

- Sur mon téléphone il affiche aussi tous les images correctement après remplissage, mais quand je touche une ligne j'ai:

Message=Attempt to invoke virtual method 'fr.pcsoft.wdjava.ui.dessin.a.p fr.pcsoft.wdjava.ui.dessin.a.h.a(boolean)' on a null object reference
Pile Java=fr.pcsoft.wdjava.ui.dessin.e.getImagePeintre(Unknown Source)
fr.pcsoft.wdjava.ui.dessin.e.i(Unknown Source)
fr.pcsoft.wdjava.ui.champs.image.c.setMemoImage(Unknown Source)
fr.pcsoft.wdjava.ui.champs.image.c.setValeur(Unknown Source)
fr.pcsoft.wdjava.core.WDObjet.setProp(Unknown Source)
fr.pcsoft.wdjava.ui.champs.q.affecterPropriete(Unknown Source)
fr.pcsoft.wdjava.ui.champs.o.affecterValeurChampAssocie(Unknown Source)
fr.pcsoft.wdjava.ui.champs.zr.o.affecterAttributVersPropChamp(Unknown Source)
fr.pcsoft.wdjava.ui.champs.zr.WDZoneRepetee.affecterAttributVersPropChamp(Unknown Source)
fr.pcsoft.wdjava.ui.champs.zr.WDZoneRepetee.onValueChanged(Unknown Source)
fr.pcsoft.wdjava.ui.champs.u.setValeurInterne(Unknown Source)
fr.pcsoft.wdjava.ui.champs.u.onSelectionChanged(Unknown Source)
fr.pcsoft.wdjava.ui.champs.zr.WDZoneRepetee.onSelectionChanged(Unknown Source)
fr.pcsoft.wdjava.ui.champs.e.a(Unknown Source)
fr.pcsoft.wdjava.ui.champs.e.k(Unknown Source)
fr.pcsoft.wdjava.ui.champs.e.a(Unknown Source)
fr.pcsoft.wdjava.ui.champs.e.a(Unknown Source)
fr.pcsoft.wdjava.ui.champs.u.onItemClick(Unknown Source)
fr.pcsoft.wdjava.ui.champs.u.onItemClick(Unknown Source)
fr.pcsoft.wdjava.ui.champs.zr.WDZoneRepetee.onItemClick(Unknown Source)
android.widget.AdapterView.performItemClick(AdapterView.java:300)
android.widget.AbsListView.performItemClick(AbsListView.java:1247)
android.widget.AbsListView$PerformClick.run(AbsListView.java:3215)
android.widget.AbsListView$3.run(AbsListView.java:4009)
android.os.Handler.handleCallback(Handler.java:739)
android.os.Handler.dispatchMessage(Handler.java:95)
android.os.Looper.loop(Looper.java:155)
android.app.ActivityThread.main(ActivityThread.java:5696)
java.lang.reflect.Method.invoke(Native Method)
java.lang.reflect.Method.invoke(Method.java:372)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1028)
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:823)
Thread=id=1
name=main
priority=5
groupName=main

Est-ce qu'il existe déjà une solution pour ce bug?

Cordialement
Zervarn
Publicado el 16,octubre 2017 - 19:59
J'ai le même problème...!
Même avec les dernières mises à jour.

Avez-vous trouvé une solution?

Merci
Jean
Publicado el 24,febrero 2018 - 20:09
Bonjour,

Avez-vous trouvé une solution a votre probléme lorsque vous touchez une ZR ?

Cdt,

Renald