Italian Script designer

LucaMs

Expert
Licensed User
Longtime User
Scusate, ma in questo periodo non sono lucidissimo e probabilmente ho anche poca voglia di leggere e concentrarmi, ma...

a che serve lo script designer?

Se devo scriverci le posizioni e dimensioni delle view, non vedo più l'utilità del designer stesso.

A questo proposito, la mia idea era quella di:

creare il mio "form" col designer, con impostato il layout variant per il mio smartphone (480x800 - 1.5);
farlo "esaminare" da un modulo apposito che generasse il "codice" (un file di testo) per la dichiarazione delle view e le loro dimensioni e posizioni in percentuali. Quindi usare il copia&incolla e infine togliere il modulo "generatore" dall'app.

Avevo (ed ho) però un grosso problema: non sapevo come reperire, durante il loop per le view, il NOME delle view! L'unica sarebbe stato usare i tag, ma che spesso utilizzo per altri scopi.

Quindi le mie domande sono due:
1) Script designer;
2) è possibile ottenere i nomi delle view tramite la reflection? (riuscissi a capire bene la reflection starei a cavallo in molte situazioni ).

Grazie a tutti, ciao.

PS immagino e spero che lo script potrebbe evitarmi proprio tutto quanto sopra.
 
Last edited:

djveleno

Active Member
Licensed User
Longtime User
Dunque... si va con ordine:
Lo script designer serve ad adattare le view alle diverse dimensioni degli schermi presenti sul mercato degli smartphone.
Se l'app che devi sviluppare è destinata solo a tuo uso e consumo, una volta impostato il design con le corrette impostazioni del tuo smart, non hai più necessità di nessun adattamento diverso, se invece l'app deve essere distribuita, ovviamente non potendo sapere a priori quali dimensioni avranno gli schermi su cui girerà, è necessario fare in modo che sia fruibile dal maggior numero di utenti possibili, per farlo si può usare lo script designer o anche un proprio programma, il risultato non cambierà (si spera), una cosa non mi è chiara, cosa intendi per NOME delle view...
 

LucaMs

Expert
Licensed User
Longtime User


Innantitutto, grazie per la risposta, sei sempre presente (intendo dire partecipe, non che sei sempre qui, hehehe).

Si, l'adattamento ai vari display, era il discorso. Avevo risolto, come dicevo... beh, nn mi ripeto, è scritto sopra.
Ma nello script, se metto .width = 100%X tanto vale che lo metta nei moduli activity, no? E, d'altra parte, se invece metto dip, devo comunque copiarli dal designer (dalle proprietà) e incollarli nello script (e non so nemmeno come diventino i 100dip adattati dallo script).

"una cosa non mi è chiara, cosa intendi per NOME delle view..."

Il modulo che ho sviluppato, genera un testo simile al seguente (con nomi delle view significativi, ovviamente, questo è un esempio):

#Region "Views Dim"
Dim Button1 As Button
Dim Button2 As Button
Dim EditText1 As EditText
...
#End Region

#Region "Views layout setting"
' Activity
Activity.AddView(Button1, 0%x, 0%y, 25%x, 10%y)
Activity.AddView(Button2, 0%x, 14%y, 50%x, 10%y)
Activity.AddView(EditText1, 50%x, 14%y, 50%x, 10%y)
...
#End Region


Nell'activity_resume richiamo semplicemente una routine del modulo (GeneratePercLayoutCode(Activity, "Activity")).

La generazione avviene (a runtime!) ciclando sulle view dell'activity/pannelli. Ricava il tipo con GetType, la posizione, le dimensioni e le rapporta al contenitore.

Il problema sta appunto nel Nome della view: Button1, Button2, EditText1 che dovranno finire nel "codice generato", attualmente sono costretto a scriverli nel tag della view, tag che poi non potrò utilizzare per altro, o non sempre perlomeno.

Lessi (nn il cane) una risposta di Erel circa il fatto che ottenerlo (il nome) tramite reflection non sia possibile, ma speravo di aver capito male .

Grazie ancora.

Ciao
 
Cookies are required to use this site. You must accept them to continue using the site. Learn more…