CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: 9mm con ben 3 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: 9mm con ben 8 Thanks ricevuti negli ultimi sette giorni
Utente del mese: 9mm con ben 29 Thanks ricevuti nell'ultimo mese

Visualizzazione dei risultati da 1 a 2 su 2
Discussione:

Sviluppare app per diversi dispositivi

Se questa discussione ti è stata utile, ti preghiamo di lasciare un messaggio di feedback in modo che possa essere preziosa in futuro anche per altri utenti come te!
  1. #1
    Baby Droid


    Registrato dal
    Mar 2017
    Messaggi
    23

    Ringraziamenti
    4
    Ringraziato 0 volte in 0 Posts
    Predefinito

    Sviluppare app per diversi dispositivi

    Buongiorno a tutti,
    ho letto molte discussioni in merito ma purtroppo sono ancora confuso su quale sia la strada migliore.
    Mi spiego meglio sto creando un'applicazione con Android studio e ovviamente deve essere usata e compatibile per tutti i dispositivi ( quindi di dimensioni differenti).

    Leggendo nel web ho trovato varie "strade":

    1. Recuperare la dimensione dello schermo e impostare ad ogni oggetto una "frazione" del totale.
    Di seguito riporto dei pezzi di codice:
    codice:
     public int[] dimension()
        {
            WindowManager wm = (WindowManager) getApplication().getSystemService(Context.WINDOW_SERVICE);
            Point size = new Point();
            Display display = wm.getDefaultDisplay();
            display.getSize(size);
            int[] dimension = {size.x,size.y};
            return dimension;
    
        }
    Poi richiamo la funzione che setta per i vari oggetti la dimensione
    codice:
        final SetDimension app = new SetDimension();
            app.SetTextView(TVDateFrom,GuestPreference.getInt(MainActivity.DimensionWidthKey,0),GuestPreference.getInt(MainActivity.DimensionHeigthKey,0)/2);
    La funzione è la seguente
    codice:
    public void SetTextView(TextView TV,double dimWidth, double dimHeight){
    
            //Imposto la dimensione alla TV
            TV.setWidth((int)dimWidth);
            TV.setHeight((int)dimHeight);
    
        }
    Purtroppo tutto lavoro sprecato non so per quale motivo ma nei dispositivi non appare in modo corretto

    2. creare un layout per i vari tipi di schermo (large,xlarge etc etc)
    Come soluzione mi sembra la più azzeccata ma non soddisfa appieno le mie necessità. Premetto che utilizzo tutti LinearLayout per impostare al meglio la struttura (sto sbagliando?) ma vorrei impostare delle percentuali dello schermo per i vari oggetti non un layout generico che poi in vari dispositivi si veda diversamente.
    Per esempio ho testato l'app in un Huawei P9 e un Samsung S6 edge + ed ho notato che, sebbene abbia creato un LinearLayout con width "match_parent", nel Samsung s6 non occupa tutto lo schermo orizzontalmente ma si ferma prima.

    Consigli? spero di essere stato abbastanza esaustivo.

    Grazie a tutti in anticipo

  2.  
  3. #2
    Baby Droid


    Registrato dal
    Oct 2009
    Messaggi
    4

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    Se non vuoi sbatterti con le varie risoluzioni, ti consiglio di studiare il ConstraintLayout, è molto flessibile e non legato necessariamente alla risoluzione dello schermo
    https://developer.android.com/traini...out/index.html

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire risposte
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Torna su
Privacy Policy