Spørsmål:
Endre størrelsen på skjermen slik at den bare vises på en del av den semi-funksjonelle berøringsskjermen
Selah
2015-07-16 20:31:25 UTC
view on stackexchange narkive permalink

Jeg har en oneplus Android-telefon. Berøringsskjermen begynte nylig å fungere slik at den nederste centimeteren på skjermen ikke fungerer, men resten av skjermen fungerer perfekt. Dessverre inneholder bunncentimeteren mange viktige funksjoner. Er det en måte å endre størrelse på skjermen eller oppløsningen slik at den ekskluderer den nederste centimeteren på skjermen min?

Siden det er den nederste centimeteren, kan du sannsynligvis stille den til å bruke både kapasitive og navigeringsknapper på skjermen. På den måten vil navigasjonsfeltet registrere den ubrukelige delen, og du kan fortsatt bruke kapasitive knapper til å navigere.
En svar:
Firelord
2015-07-18 18:18:03 UTC
view on stackexchange narkive permalink

Merknader:

  • Min løsning er testet på Stock Android 4.4.2 og Stock CyanogenOS 12 (5.0) av OnePlus One, og skal fungere for Android 4.3 og ovenfor (basert på dette svaret).
  • Jeg har nevnt hvor root-tilgang er nødvendig.
  • Dette svaret er hentet fra mitt svar på et litt annet spørsmål her.

Jeg har brukt følgende kommentar som grunn til å jobbe med:

De nederste 20 % av Nexus 4 fungerer ikke. Jeg bruker: wm overscan 0,0,0,210 for at Android WM ikke skal tegne noe i det området slik at jeg kan betjene alle de tegnede områdene fullt ut igjen .. - Thrustmaster

Instruksjoner :

  1. Aktiver USB-feilsøking på telefonen.
  2. Installer ADB-verktøy på PC-en din , koble enheten til den, og sørg for at enheten blir oppdaget i adb-enheter .
  3. Vi trenger å kjenne oppløsningen og skjermtettheten til enheten. I terminalen / cmd skriver du inn adb shell dumpsys display | grep mBaseDisplayInfo for å vise skjermrelatert info. Utgangen kan se ut som:

      mBaseDisplayInfo = DisplayInfo {"Innebygd skjerm", app 480 x 854, real 480 x 854, største app 480 x 854, minste app 480 x 854, 64,29 fps, rotasjon 0, tetthet 240, 240,0 x 240,0 dpi, layerStack 0, type BUILT_IN, adresse null, FLAG_SECURE, FLAG_SUPPORTS_PROTECTED_BUFFERS}  

    Den relevante informasjonen i mitt tilfelle er:

    • ekte 1080x1920
    • tetthet 480
    1. De mest nyttige kommandoene som skal brukes er:

      • wm overscan [reset | VENSTRE, TOPP, HØYRE, BUNN]
      • wm tetthet [reset | DENSITY]

      Min standardstarterskjerm uten justeringer så ut:

    2. For å redusere skjermutgangen nederst, gi kommandoen:

        adb shell wm overscan 0,0,0,100  

      Merk at jeg brukte ytterligere reduksjon med opptil 0,0,0,300 og utgangen var slik:

      Juster verdien til dine behov.

    3. Du må kanskje korrigere tettheten siden skjermen kan se merkelig ut. Enhetens standard skjermtetthet er 480 dpi, så jeg justerte den på denne måten:

        adb shell wm density 440  

      og den resulterende skjermen var som dette. En app under justert oppløsning.

    4. Merk at du kan bruke tilbakestilling av adb shell wm density reset og adb shell wm overscan for å gå tilbake til henholdsvis standard tetthet og oppløsning.
    5. Nå som "død berøringssone" er tatt vare på er det på tide å bruke virtuelle / myke taster (bare hvis du trenger det ).

      1. Izzy har det allerede dekket i dette svaret. Ellers kan du bruke Gravitybox LP (for Lollipop-brukere) eller Gravitybox KK (for Kitkat-brukere). Det er en Xposed-modul, og krever root-tilgang og Xposed Framework installert.

        Installer, aktiver og start Gravitybox → Tilpasning av navigasjonsfelt Aktiver navigasjonsfelt → start en omstart, og funksjonstaster aka navigasjonsfelt ville bli funnet aktivert.

      2. Egendefinert ROM som Cyanogenmod og noen lager-ROM-er har muligheten til å aktivere funksjonstaster (knapper) under Innstillinger . Du kan bruke det alternativet siden det ikke krever noen root-tilgang.

      3. Etter noen ytterligere justeringer så det siste skjermbildet til Android 5.0 ut:

        IMG: After some further tweaks the final screen of my Android 5.0 looked like

Vi er gode å gå!

Jeg skulle ønske jeg hadde visst om dette da jeg knuste de andre telefonene mine! Etter å ha lekt med dette kunne jeg ikke få Nexus 6-tastaturet til å justere seg i landskapet. Jeg mangler høyre side av tastaturet. Det fungerer bra i portrett, så det bør være et sjeldent tilfelle når det faktisk er en funksjonshemning. Heldigvis klemmer jeg meg bare og trenger ikke dette akkurat nå, men det er kult å vite. Måte smart arbeid! Takk skal du ha.
@Kristopher Har du også justert tettheten og startet enheten på nytt? Noen apper svarer ikke på endringer i skjermstørrelse.
Jeg tenkte at jeg ikke startet på nytt, og du har rett. Ting endret seg da. Bra saker (:
Fungerer bra.Jeg fikk en android.permission.SHUTDOWN nektet feil da jeg prøvde å endre tettheten, men det var bare fordi min OPO trengte en obligatorisk omstart etter en tetthetsendring.Gjorde en manuell omstart, og alt var bra.
BTW, (I OPO, CyanogenOS) kan vi også endre tettheten fra Innstillinger -> Skjerm og lys -> LCD-tetthet.Det vil automatisk be om omstart.
@Firelord er det en måte å forskyve skjermen i en retning?Jeg prøvde kommandoen 'overscan', og den bryter mange apper (selv etter omstart).Så jeg brukte kommandoen 'størrelse' for å angi høyden 100 px mindre.Dessverre krympet den til midten, og det er polstring både på toppen og bunnen.Men alle appene fungerer bra.Er det en måte å forskyve skjermen oppover på y-aksen 50px, slik at all ekstra polstring er på bunnen (de nederste 100px på skjermen min reagerer ikke på berøring)?Nøkkelordet her er "oversett".Jeg finner ingen omfattende liste over kommandoer hvor som helst ... :(
@BlackPanther Jeg vil sette pris på om du konverterer den kommentaren til et fullverdig spørsmål, da jeg ikke kan ta opp den her, selv om jeg kanskje har svar.Dessuten vil andre brukere også kunne hjelpe deg.:)
@Firelord Jeg ønsket å gjøre det også, men da kan noen være ivrige etter å markere det som en duplikat ...: 'D Jeg vil gjøre det til et eget spørsmål uansett.Takk :)
@Firelord Jeg har spurt det som et eget [spørsmål] (https://android.stackexchange.com/q/203904/279326)


Denne spørsmålet ble automatisk oversatt fra engelsk.Det opprinnelige innholdet er tilgjengelig på stackexchange, som vi takker for cc by-sa 3.0-lisensen den distribueres under.
Loading...