2012-08-05 17 views

risposta

2

Sì, è una cosa molto cablata per rendere il layout per lo schermo di Android supportato. E ci sono molti schermi disponibili sul mercato.

Una volta ho fatto una demo e funziona per me. Ho creato un pulsante in cui altezza e larghezza sono uguali. Ora ho impostato la sua altezza e larghezza richieste come da una schermata in cui sembra perfetta.

Successivamente ho calcolato il pixel necessario per renderlo possibile in quella schermata e in base a quello l'ho applicato a tutto lo schermo.

Ora funziona benissimo su tutti i dispositivi con qualsiasi densità e risoluzione.

Quindi se c'è una vista che genera in fase di esecuzione e si desidera impostarne l'altezza e la larghezza, il modo migliore è calcolare il rapporto altezza-larghezza e usarlo.

spero che ti possa aiutare.

Godetevi la codifica. . . .

:)

+0

Amo questo commento pratico. Questo ha decisamente senso. Capisco l'aspetto del rapporto, ma come si determina la larghezza in primo luogo? Quello che faccio è che cerco di vedere quanti pixel è necessario affinché il pulsante abbia un bell'aspetto. Poi vedo la percentuale che prende dai pixel totali dello schermo. Infine, utilizzo questa percentuale per calcolare la larghezza del pulsante su ogni schermata a livello di programmazione. Ha senso? – Snake

+0

Sì, funzionerà. Basta impostare l'altezza e la larghezza del pulsante in modo programmatico per una schermata. Una volta se sembra bello, conta le razioni di altezza e larghezza in base alla risoluzione dello schermo del dispositivo. Dopo aver ottenuto la razione. Usa quella razione nel file java. Funziona per tutte le dimensioni dello schermo. –

+0

come calcoli i pixel del pulsante ?? puoi fornire il codice per quel pezzo di lavoro ?? l'aiuto sarà apprezzato – User42590

1

Bene, nella maggior parte dei casi si avranno layout che sono, o diventeranno, complessi e sarà difficile calcolare le posizioni a livello di codice.

E sarà anche uno svantaggio manterlo, perché non sarà possibile utilizzare l'interfaccia (layout grafico e così via), e altre persone, o te stesso, non capiranno i calcoli nello stesso modo in cui avrebbero se vedono le viste in XML. Riorganizzare, cambiare da qualche parte in una posizione potrebbe essere doloroso.

Si lavorerà spesso anche con bitmap, che hanno una dimensione fissa, se si calcolano le dimensioni a livello di codice e si allungano non sembreranno buone. Almeno avresti bisogno di diversi set di bitmap e carichi di conseguenza.

È utile se ad esempio si utilizzano layout relativi con regole (come sopra/allinea nella parte inferiore del genitore, ecc.), Layout lineari con pesi e dip (pixel indipendenti dalla densità). Dovresti fare il layout programmatico solo quando non è possibile in altro modo. O in alcuni casi in cui davvero rende davvero le cose più facili.

+0

È vero. Ma farlo mi ha fatto imbattersi nella seguente domanda che ho creato con una taglia. http://stackoverflow.com/questions/10378030/two-devices-similar-densities-yet-different-image-sizes – Snake

Problemi correlati