Perché il Nexus 7 può visualizzare sullo schermo molti più contenuti rispetto al Galaxy Nexus?


30

Il Galaxy Nexus è 1280x720 e il tablet Nexus 7 è 1280x800.

Mi rendo conto che il tablet è fisicamente più grande, ma è la risoluzione dello schermo, non le dimensioni dello schermo, che determina la proprietà dello schermo.

Perché il Nexus 7 sembra essere in grado di mostrare molti più contenuti sullo schermo?

EDIT - La mia domanda non è "perché è stata progettata in questo modo". La mia domanda è più "com'è che è in grado di mostrare di più sullo schermo"? PPI non lo spiega.

È solo una questione di ridimensionamento?


Avrei dovuto chiedere "come" è in grado di farlo. Quando ho detto perché, non intendevo "perché l'hanno progettato in questo modo", intendevo "perché questo è TECNICAMENTE possibile"?
Zacharyalexstern,

Perché è possibile Sul serio? Rendi le cose più piccole.
RR

Inoltre, se cerchi nel build.prop di quella ROM (se hai il dump della ROM), c'è una linea lì ro.sf.lcd_density = xxx che determina la densità dello schermo. Più alto è il valore, più può adattarsi allo schermo, allo stesso modo il contrario, meno può adattarsi allo schermo.
t0mm13b,

2
@zacharyalexstern: chiedersi come è fatta è una domanda di sviluppo, ed è fuori tema qui. Prova StackOverflow.
Lie Ryan,

Risposte:


44

Per capire perché Nexus 7 può mostrare più contenuti del Galaxy Nexus, spiegherò innanzitutto due concetti: densità dello schermo e pixel indipendenti dalla densità.

Ma prima di entrare nei dettagli tecnici, potrebbe essere utile chiarire gli obiettivi di progettazione dell'utilizzo di pixel indipendenti dalla densità. L'obiettivo è definire un'interfaccia utente simile nelle dimensioni tra i dispositivi, indipendentemente dalle dimensioni dello schermo. Quindi in questo caso l'aspetto dei menu è lo stesso nel Galaxy Nexus e nel tablet (fianco a fianco dovrebbe apparire molto simile), ma, dato che uno ha uno schermo più grande, è possibile mostrare più contenuti. Il designer seleziona un aspetto che sembra buono per una certa dimensione (uno schermo da 160 dpi è la base) e questo è "simulato" in questo caso in dispositivi con dpi più alti.

Densità schermo

Comunemente indicato come dpi (punti per pollice). Android raggruppa tutte le densità effettive dello schermo in quattro densità generalizzate: bassa (120), media (160), alta (240) ed extra alta (320). Un dispositivo come Galaxy Nexus ha una densità dello schermo "extra alta" (in particolare, il valore dpi è impostato su 320). Il Nexus 7 utilizza "tvdpi", ovvero 213 dpi.

Pixel indipendente dalla densità

Comunemente indicato come dp. Questa è l'unità pixel virtuale utilizzata durante la visualizzazione del contenuto. Il pixel indipendente dalla densità equivale a un pixel fisico su uno schermo da 160 dpi. Per calcolare dp utilizzare la seguente formula:

px = dp * (dpi / 160)

o equivalentemente:

dp = (px / dpi) * 160

Il motivo per cui Nexus 7 può mostrare più contenuti del Galaxy Nexus nonostante abbia risoluzioni simili è questo: il dpi di Nexus 7 è inferiore a Galaxy Nexus .

Galaxy Nexus (320 dpi, larghezza 720 pixel)

(720 / 320) * 160 = 360 dp

Nexus 7 (213 dpi, larghezza 800 pixel)

(800 / 213) * 160 = 600 dp

Ciò significa che quando le app vengono visualizzate sul Galaxy Nexus, la larghezza dello schermo è in realtà 360 dp (renderizzata usando 720 pixel). Considerando che sul Nexus 7, la larghezza dello schermo è di 600 dp (renderizzata usando 800 pixel).

indennità

Se il tuo Galaxy Nexus è rootato, puoi usare un'app come LCD Density Modder e modificare il DPI del tuo dispositivo su 240. Ciò che otterrai è qualcosa di molto più vicino al Nexus 7 in un pacchetto più piccolo. Sulla sinistra è presente uno screenshot del dispositivo a 240 dpi. Noterai che possiamo vedere molti più contenuti quando il DPI è più basso.

Galaxy Nexus a 240 dpi Galaxy Nexus a 320 dpi

Niente a che vedere con PPI

Le altre risposte menzionano PPI. La quantità di contenuto visualizzata non ha nulla a che fare con il PPI di un dispositivo. Sebbene comunemente, i fornitori selezionano il DPI più vicino al PPI del dispositivo. (ad es. Galaxy Nexus ha un PPI di 316, ma un DPI di 320, mentre come Nexus 7 ha un PPI di 216, ma utilizza un 213 DPI).

Ulteriori letture

http://developer.android.com/guide/practices/screens_support.html


2
Grazie per questo, nessun altro ha effettivamente risposto alla domanda che stavo ponendo.
Zacharyalexstern,

2
Questa è una buona risposta in generale, ma il paragrafo "niente a che fare con PPI" fa una falsa distinzione tra DPI e PPI. Vedi il mio commento sulla risposta di Mohammed Essam.
Wyzard

Ciao. Solo non capisco una parola di quello che stai dicendo. Supponi che più dpi è basso, più puoi mostrare. Ma quando hai 100 punti per pollice, mostri solo meno informazioni su un pollice che quando hai 200 punti per pollice. Inoltre, se la densità predefinita è impostata vicino al ppi del dispositivo, non puoi fare di meglio, anche modificando il valore, perché per quanto ne so, un punto può essere visualizzato su molti pixel, ma un pixel non può visualizzare più quell'unico punto.
Oliver,

Uhhh, questo vale per gli schermi desktop?
Oliver,

2
In realtà il Nexus 7 ha 213 DPI ed è di 600x961 unità dp. Vedi plus.google.com/105051985738280261832/posts/6eWwQvFGLV8
beetstra

7

Questo perché i pixel per pollice (PPI) sono diversi tra loro. Maggiore è il PPI, maggiore è la qualità ma a un costo di dimensioni (relative) dello schermo più piccole. Quindi il Nexus 7 ha 216 pixel per pollice mentre il Galaxy Nexus ha 316 pixel per pollice. La risoluzione non è tutto, devi anche considerare la densità dei pixel.

Valori PPI elevati hanno il vantaggio di essere HD, ma presenta anche uno svantaggio di dimensioni dello schermo più piccole (con una risoluzione persistente).

Puoi leggere di più su PPI qui .


Non vedo cosa abbia a che fare PPI con lo schermo immobiliare. Supponendo che nessun ridimensionamento, il Galaxy Nexus dovrebbe avere approssimativamente lo stesso spazio sullo schermo del Nexus 7, le cose dovrebbero apparire più piccole sullo schermo.
Zacharyalexstern,

3
@zacharyalexstern, PPI è rilevante perché determina il ridimensionamento dei caratteri. Il testo a 12 punti dovrebbe essere alto un sesto di pollice (72pt = 1 pollice), che corrisponde a 36 pixel sul Nexus 7 216ppi e circa 53 pixel sul Galaxy Nexus 316ppi. Anche altri elementi dell'interfaccia utente vengono ridimensionati in base al PPI.
Wyzard

2
Fondamentalmente, gli elementi dell'interfaccia utente vengono ridimensionati per apparire con una dimensione fisica coerente su tutti i dispositivi. Ecco perché puoi inserirne un numero maggiore su un dispositivo fisicamente più grande.
Wyzard

2
@zacharyalexstern Non posso dirlo meglio di Wyzard, quindi non lo farò. Lo sto solo sostenendo perché sembri irremovibile che PPI non abbia nulla a che fare con il settore immobiliare dello schermo. Ti prometto il contrario, ha tutto a che fare con lo schermo immobiliare. È corretto che due schermi 1280x800 abbiano lo stesso numero di pixel . Ma tutti i componenti Android sono ridimensionati in base alla densità dei pixel. Hai programmato per Android? Il termine dp è familiare?

1
@DerekKwok, DPI è un termine di stampa che non è realmente applicabile ai display dei computer. Quando viene utilizzato in relazione agli schermi dei computer, è generalmente sinonimo di PPI, poiché l'immagine è fatta di pixel, non di punti.
Wyzard

4

Mostrare la stessa quantità di contenuto su uno schermo da 4.6 "lo renderebbe proibizionalmente piccolo nella maggior parte dei casi. Non saresti in grado di leggerlo, quindi mettere quel contenuto sullo schermo non ha senso. La risoluzione determina quanti pixel puoi visualizzarlo, ma un pixel non ha le stesse dimensioni su ogni schermo . Per rendere il contenuto utilizzabile e leggibile è necessario utilizzare più pixel su uno schermo più piccolo perché sono più densi.

Per un buon confronto, apri una pagina Web su un Galaxy Nexus e ingrandisci completamente. La stessa pagina visualizzata su un monitor da 14 "(o simile) con una risoluzione simile non sarebbe un problema, ma il testo è quasi indecifrabile sul telefono.


Dal punto di vista di "come viene realizzato tecnicamente", dipende in gran parte da come viene scritta un'app. Per impostazione predefinita, Android scalerà semplicemente l'interfaccia su uno schermo più grande, il che potrebbe o meno rendere più visibili i dati (prendere in considerazione un elenco a scorrimento, ad esempio: più elementi sarebbero visibili su uno schermo più grande). Questo è lo scenario più semplice.

È anche possibile, tuttavia, che uno sviluppatore definisca layout completamente diversi in base alla dimensione o alla densità dello schermo. Pertanto, i layout su un dispositivo da 7 "potrebbero essere completamente estranei ai layout su un dispositivo da 4" o 10 ". Ciò offre agli sviluppatori molta flessibilità per creare interfacce utente più ricche per tablet (e altri dispositivi simili) mantenendo le interfacce del telefono utilizzabile. Questo è trattato a lungo sul sito degli sviluppatori Android .


Stavo per dire, ironico che Google sta supportando l'iPad per il loro Google + ... che la demo di Glass con Brin era qualcos'altro però ...: D
t0mm13b,

Capisco PERCHÉ è fatto, la mia domanda è più come . Ad esempio, è solo una questione di ridimensionamento?
Zacharyalexstern,

@zacharyalexstern: Dipende da come è scritta l'app, quindi. Se vuoi, puoi scrivere un'app per utilizzare layout completamente diversi su schermi di dimensioni diverse, quindi non è necessariamente solo un "ridimensionamento" nel senso tipico. In alternativa, puoi consentire all'app di ridimensionare, se vuoi. C'è un set abbastanza considerevole di documentazione dedicata a questo sul sito degli sviluppatori Android, ma questo è un riassunto piuttosto semplice.
eldarerathis,

1

Ci scusiamo per la risposta stupida, ma: il Galaxy Nexus rende tutto più grande.

Ad esempio, la piccola lettera "a" può avere una larghezza di 30 pixel sul Galaxy Nexus, mentre ha solo 20 pixel sul Nexus 7. In questo modo, più lettere possono adattarsi allo schermo. Il motivo per cui sembrano avere le stesse dimensioni (ad esempio 3 mm se metti un righello sullo schermo) è, come hanno detto gli altri, la densità di pixel. Fondamentalmente, i pixel sono più grandi, fisicamente, sul Nexus 7.

Il motivo per cui il Galaxy Nexus rende tutto più grande è che puoi effettivamente usarlo senza tenerlo a un centimetro dal tuo viso. Se la lettera "a" avesse una larghezza di 20 pixel, come sul Nexus 7, sarebbe troppo piccola per essere letta comodamente (poiché i pixel sono molto più piccoli).


Lo capisco, non è il mio questioin.
Zacharyalexstern,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.