26. december 2006 - 12:13Der er
7 kommentarer og 1 løsning
Skift enkelt element i GridLayout
Hejsa, lige et enkelt spørgsmål her i julen.
Er ved at lave et spil, hvor jeg har opbygget selve banen som et GridLayout, hvilket fungere glimrende. Mit problem er bare at jeg ikke er helt tilfreds med min nuværende løsning når jeg skal ændre i min bane.
Når jeg skal ændre en Væg til Jord, så smider jeg hele mit gridlayout væk og opretter et nyt, hvor den er ændret på.
Men er det ikke muligt kun at skifte et enkelt element i et GridLayout?
Jeg ville, hvis det var mig, benytte "Graphics" til at tegne med. Dette objekt er netop beregnet til grafik som skal opdateres forholdsvist ofte. Umiddelbart kan jeg kun se én ulempe i forhold hvordan du gør det nu, og det er at du mer eller mindre selv skal definere "Gridlayout"'et, men modsat giver det også andre friheder.
I graphics ligger der nemlig 2 metoder, henholdsvis update og redraw som du kan bruge alt efter hvormeget grafik der skal ændres.
Kender godt til Graphics, bruger det allerede til at flytte min spiller rundt på banen hvilket fungere glimrende, kan bare ikke forstå at man har layout managere, som ikke kan finde udaf at opdatere et enkelt element, uden man skal smide det hele væk først og bygge det op på ny.
Og jo selvfølgelig er det en mulighed at ændre koden til at benytte Graphics, det er bare så oplagt at benytte et gridlayout til at vise en 2d spilleplade.
Jeg er enig, og der også muligt at det kan lade sig gøre med gridlayout (bare ikke noget jeg kender til).
men egentlig er det vel ikke andet end et array som indeholder objekter af billeder og en for-lykke som placere dem. Så har du dit gridlayout. Yderligere vil du kunne, med imageUpdate() opdatere billederne.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.