Autore Topic: Come prendere larghezza e altezza di un display  (Letto 371 volte)

Offline t0re199

  • Nuovo arrivato
  • *
  • Post: 8
  • Respect: 0
    • t0redev
    • Mostra profilo
  • Dispositivo Android:
    Asus ZenFone 2
  • Sistema operativo:
    Mac Os X 10.10.1 , Windows 8.1 update 2
Come prendere larghezza e altezza di un display
« il: 11 Marzo 2015, 18:19:33 CET »
0
Buonasera  tutti vorrei sapere come avere larghezza e altezza di un display.
Grazie Buonasera!!
PS ho provato diversi metodi tra cui :
int width = getWindowManager().getDefaultDisplay().getWidth();
int height = getWindowManager().getDefaultDisplay().getHeight();

ma non va!!


Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 4043
  • keep it simple
  • Respect: +567
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:Come prendere larghezza e altezza di un display
« Risposta #1 il: 11 Marzo 2015, 18:21:54 CET »
0
Puoi articolare meglio il "non va" ?

In che senso?
In quali condizioni?
Cosa ti aspetti e cosa ti restituisce?
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline t0re199

  • Nuovo arrivato
  • *
  • Post: 8
  • Respect: 0
    • t0redev
    • Mostra profilo
  • Dispositivo Android:
    Asus ZenFone 2
  • Sistema operativo:
    Mac Os X 10.10.1 , Windows 8.1 update 2
Re:Come prendere larghezza e altezza di un display
« Risposta #2 il: 11 Marzo 2015, 18:30:14 CET »
0
Si certo, già nelle dichiarazioni delle variabili Android studio mi "taglia" il getWidth() e il getHeight(), ma tralasciando questo mi dopo aver compilato è lanciato l app questa crasha e mi genera un eccezione al windowsmanager.

Offline tonno16

  • Utente storico
  • *****
  • Post: 1228
  • Respect: +59
    • Mostra profilo
  • Dispositivo Android:
    moto g
  • Play Store ID:
    Diego Tonini
  • Sistema operativo:
    OpenSuse
Re:Come prendere larghezza e altezza di un display
« Risposta #3 il: 11 Marzo 2015, 18:36:08 CET »
0
"tagliata" significa che chiami un metodo obsoleto. Obsoleto non vuol dire sbagliato o non funzionante. Vuol dire che per fare quello che hai intenzione di fare esiste sicuramente un metodo più performante.
Ti consiglio di postare il Log generato dalla chiusura imprevista dell' app.

Offline t0re199

  • Nuovo arrivato
  • *
  • Post: 8
  • Respect: 0
    • t0redev
    • Mostra profilo
  • Dispositivo Android:
    Asus ZenFone 2
  • Sistema operativo:
    Mac Os X 10.10.1 , Windows 8.1 update 2
Re:Come prendere larghezza e altezza di un display
« Risposta #4 il: 12 Marzo 2015, 17:58:42 CET »
0
Ecco il log ragazzi:

03-12 17:58:13.470    2209-2209/t0re199.spcalculator E/AndroidRuntime﹕ FATAL EXCEPTION: main
    Process: t0re199.spcalculator, PID: 2209
    java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{t0re199.spcalculator/t0re199.spcalculator.MainActivity}: java.lang.NullPointerException: Attempt to invoke interface method 'android.view.Display android.view.WindowManager.getDefaultDisplay()' on a null object reference
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2209)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360)
            at android.app.ActivityThread.access$800(ActivityThread.java:144)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:135)
            at android.app.ActivityThread.main(ActivityThread.java:5221)
            at java.lang.reflect.Method.invoke(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:372)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
     Caused by: java.lang.NullPointerException: Attempt to invoke interface method 'android.view.Display android.view.WindowManager.getDefaultDisplay()' on a null object reference
            at t0re199.spcalculator.MainActivity.<init>(MainActivity.java:29)
            at java.lang.reflect.Constructor.newInstance(Native Method)
            at java.lang.Class.newInstance(Class.java:1572)
            at android.app.Instrumentation.newActivity(Instrumentation.java:1065)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2199)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360)
            at android.app.ActivityThread.access$800(ActivityThread.java:144)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:135)
            at android.app.ActivityThread.main(ActivityThread.java:5221)
            at java.lang.reflect.Method.invoke(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:372)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)