Italian Consiglio per sviluppare un app nel modo migliore.

PakoT52

Active Member
Licensed User
Longtime User
Ciao ragazzi , sto sviluppando un applicazione però adesso sono un poco confuso su come continuare , vi spiego per bene . Allora io sto creando un quiz , nel quale viene mostrata un'immagine e si hanno quattro bottoni dove solo uno di questi è quello giusto , se si sbaglia viene tolta una vita altrimenti no . Le vite sono 3 e ho pensato di dichiararle come variabili in modo da poterle scalare in caso di risposta errata , però il problema mi sorge quando finiscono le vite che deve aprirsi un pop-up per 20 secondi e se non si vuogliono aspettare i 20 secondi si possono comprare Una - Due o Tre vite con i punti che sono stati fatti rispondendo correttamente . Ora avevo pensato di fare uno script cosi :
If vite = 0 Then
Timer1.Initialize("Timer1",20000)
CmprVite.Visibile = True '##Questo ho pensato di fare un immagine di piccole dimensioni come poup-up e farlo comparire in caso non si avrebbero più vite
SlvVite.Visibile = True '##Button per comprare le vite
End If
If SlvVite_Click then '##Credo si dica cosi al programma , che se viene cliccato il button SlvVite fa..
Vite = Vite + 1
ImgV1.Visibile = True '##Immagine della vita
Timer.Enabled = False
SlvVite.Visibile = False
CmprVite.Visibile = False
End If
Il codice sopra citato l'ho scritto per dare un idea , ma credo anche che sia il codice per la vita giusta . Mi è sorta una domanda , avendo più layout devo dichiarare la variabile "vite" globale in modo che sia condiva con tutti i layout ? Cosi facendo non dovrei aver problema con ciò che voglio realizzare . Spero non vi siate seccati leggendo il mio mini romanzo . Mi scuso per gli eventuali errori grammaticali ma il sonno sta prendendo il sopravvento . Ciao e grazie :)
 

Priamo

Member
Licensed User
Longtime User
Mi è sorta una domanda , avendo più layout devo dichiarare la variabile "vite" globale in modo che sia condiva con tutti i layout ? Cosi facendo non dovrei aver problema con ciò che voglio realizzare . Spero non vi siate seccati leggendo il mio mini romanzo . Mi scuso per gli eventuali errori grammaticali ma il sonno sta prendendo il sopravvento . Ciao e grazie :)
Ciao ragazzi , sto sviluppando un applicazione però adesso sono un poco confuso su come continuare , vi spiego per bene . Allora io sto creando un quiz , nel quale viene mostrata un'immagine e si hanno quattro bottoni dove solo uno di questi è quello giusto , se si sbaglia viene tolta una vita altrimenti no . Le vite sono 3 e ho pensato di dichiararle come variabili in modo da poterle scalare in caso di risposta errata , però il problema mi sorge quando finiscono le vite che deve aprirsi un pop-up per 20 secondi e se non si vuogliono aspettare i 20 secondi si possono comprare Una - Due o Tre vite con i punti che sono stati fatti rispondendo correttamente . Ora avevo pensato di fare uno script cosi :

Il codice sopra citato l'ho scritto per dare un idea , ma credo anche che sia il codice per la vita giusta . Mi è sorta una domanda , avendo più layout devo dichiarare la variabile "vite" globale in modo che sia condiva con tutti i layout ? Cosi facendo non dovrei aver problema con ciò che voglio realizzare . Spero non vi siate seccati leggendo il mio mini romanzo . Mi scuso per gli eventuali errori grammaticali ma il sonno sta prendendo il sopravvento . Ciao e grazie :)

Scusa, ma per layout activity?
In questo caso, agirei diversamente,
nel senso che invece di instanziare tante activity, userei i panel e di volta in vola li renderei visibili o no.
In questo caso avendo solo l'activity principale, avrai sempre accesso alle tue variabili.
Oppure puoi crearti un servizio e mettere li tutte le tue variabili, insomma se leggi un po le guide ed i post ci sono molti modi per poter fare quello che cerchi.
Personalmente userei la programmazione ad oggetti, mi creo una classe(l'oggetto), ci metto tutte le proprietà che mi interessano, qualche metodo se necessario(eventuali azioni da compiere), quindi nella Activity_Create instenzierei tale classe e modificherei le proprietà in base alle esigenzedurante il gioco.

questa porzione di codice
B4X:
If SlvVite_Click then '##Credo si dica cosi al programma , che se viene cliccato il button SlvVite fa..
Vite = Vite + 1
ImgV1.Visibile = True '##Immagine della vita
Timer.Enabled = False
SlvVite.Visibile = False
CmprVite.Visibile = False
End If

io la scriverei così:
B4X:
sub SlvVite_Click ()
Vite = Vite + 1
ImgV1.Visibile = True '##Immagine della vita
Timer.Enabled = False
SlvVite.Visibile = False
CmprVite.Visibile = False
End sub

Ciao.
 

PakoT52

Active Member
Licensed User
Longtime User
Grazie Priamo della tua risposta , in questi giorni ho lavorato un poco e sono andato avanti col progetto , grazie al tuo consiglio ho deciso di usare un panel e far caricare un layout e da li poter comprare le vite . Però come posso bloccare il layout al di sotto del panel ( che non copre tutto il layout di sotto
) . Grazie
 

Priamo

Member
Licensed User
Longtime User
Grazie Priamo della tua risposta , in questi giorni ho lavorato un poco e sono andato avanti col progetto , grazie al tuo consiglio ho deciso di usare un panel e far caricare un layout e da li poter comprare le vite . Però come posso bloccare il layout al di sotto del panel ( che non copre tutto il layout di sotto
) . Grazie
Devi disabilitare il contenuto del panel sottostante. Non so se esiste un metodo più rapido per fare questo, non ho trovato niente. In genere io faccio così, mi creo una funzione che accetta un oggetto panel, in questo modo la posso applicare a qualsiasi panel, poi con un for ciclo tutte le view di quel panel e poi gli faccio fare quello che mi serve, in questo caso enabled = false. E' ovvio che poi devi riabilitare il tutto.
ciao.
 

arenaluigi

Well-Known Member
Licensed User
Longtime User
Ciao PakoT52,
ti dico la mia....
Io userei un modulo pubblico dove metto le variabili globali dell'applicazione.
Poi userei un unico panel, dove programmaticamente carico i layout che mi servono.
Allo scadere delle vite, mostrei una dialog dove faccio scegliere l'utente cosa vuol fare.
Ti consiglio inoltre di guardarti bene i seguenti punti:
- Gestione dei prodotti in App
- Salvataggio dello stato attuale del livello
 

PakoT52

Active Member
Licensed User
Longtime User
Ciao PakoT52,
ti dico la mia....
Io userei un modulo pubblico dove metto le variabili globali dell'applicazione.
Poi userei un unico panel, dove programmaticamente carico i layout che mi servono.
Allo scadere delle vite, mostrei una dialog dove faccio scegliere l'utente cosa vuol fare.
Ti consiglio inoltre di guardarti bene i seguenti punti:
- Gestione dei prodotti in App
- Salvataggio dello stato attuale del livello
Ciao luigi , per dialog costa intendi ? . Per la gestione dei prodotti in app ( parli in caso voglia vendere punti per le vite o cose simili intendi ?) . Per quanto riguarda lo stato del livello , grazie all'aiuto di un utente , ho fatto in modo che venga creato un file ,ini dove vengono salvate le variabili e poi richiamate quando servono
 
Top