Suuntauksen muutosten käsittely Android-käyttöliittymän puitteissa

Yksi Android-kehityksen näkökohta, joka voi olla pelottava uusille tulokkaille, on se, miten käsitellä suuntautumisen muutoksia. Android-käyttöjärjestelmä käynnistää nykyisen toiminnan uudelleen aina, kun laite pyörii, ja monissa muissa tapauksissa. Googlen kehysinsinööreillä oli hyviä syitä suunnitella aktiviteetin elinkaari tällä tavalla, mutta tämä tieto ei tee siirryttäessä muotokuvasta maisemaan ja takaisin niin vähemmän turhauttavaa orastaville Android-kehittäjille.

Kehittäjän on otettava huomioon kaksi kohtaa suuntauksen muutoksen aikana: tilan ylläpitäminen ja resurssien lataaminen uudelleen. Se on jälkimmäinen, jonka käsittelen tässä viestissä, ja jos se kerää tarpeeksi kiinnostusta, voin kirjoittaa valtion ylläpidosta jossain vaiheessa tiellä. Tarkastellaan neljää yleisintä tapaa käsitellä suuntauksen muutoksia käyttöliittymässä ja katsotaan sitten jotain koodia.

1: Älä tee mitään

Jos tämä kuulostaa sinulle pahalta idealta, niin todennäköisesti on. On kuitenkin joitain hyvin yksinkertaistettuja rajapintoja, joissa kiertämisen (vain käyttöliittymän kannalta) huolehtiminen on pätevä lähestymistapa. Kuvan A kuvat kuvaavat yleisintä ongelmaa, kun kehittäjät eivät tee mitään näytön kiertämisessä - osa käyttöliittymästä on menetetty.

Kuvio A

Napsauta kuvia suurentaaksesi.

2: Tukahduta se

On mahdollista estää suunnanmuutos ja pakottaa sovelluksesi toimimaan aina muotokuva- tai vaaka-tilassa. Tämä vain estää käyttöliittymän pyörimisen - se ei estä toiminnan käynnistämistä uudelleen. Uusien kehittäjien on erittäin yleinen virhe ajatella, että suuntaamisen muutoksia tukahduttamalla heidän ei tarvitse käsitellä tilan ylläpitämistä. Olipa suuntauksen muutoksia, sovellusten on silti käsiteltävä toiminnan uudelleenkäynnistämistä esimerkiksi tulevien puhelujen, kotinäppäimen painalluksen jne. Vuoksi. Jos olet varma, että suuntauksen muutoksen tukahduttaminen on oikea tapa edetä, se on vain asia ominaisuuden lisääminen manifestitiedostoon jokaisesta toiminnasta, jota asia koskee. Katso kuva B.

 ".SuppressIt" android: screenOrientation = "muotokuva" /> 

Kuvio B

Napsauta kuvia suurentaaksesi.

3: Käytä vieritysnäkymää

Vaikka vieritysnäkymät eivät ole oikea valinta kaikentyyppisille käyttöliittymille, ne toimivat hyvin esimerkiksi sovellusasetuksissa. Vieritysnäkymän käytön salaisuus on ymmärtäminen, että sinun on käärittävä kaikki käyttöliittymäelementit yhteen asettelutunnisteeseen, kuten linearLayout. Vieritysnäkymät voivat käsitellä vain yhden vanhemman asettelua. Katso kuva C.

 "1.0" encoding = "utf-8" ?> 
 "Http://schemas.android.com/apk/res/android" 
 android: vierityspalkit = "pystysuora" 
 android: layout_height = "wrap_content" 
 android: layout_width = "fill_parent" > 
 android: orientation = "pystysuora" 
 android: layout_width = "fill_parent" 
 android: layout_height = "fill_parent" > 
 Kuvio C 

Napsauta kuvia suurentaaksesi.

4: Lataa vaihtoehtoinen asettelu

Kokemukseni mukaan uuden asetustiedoston lataaminen on usein paras tapa. Vaikka se ei ole intuitiivinen, koska uusi ohjattu toiminto ei ole luonut tarvittavia resurssikansioita, jokaisella asettelulla voi olla kaksi versiota. Temppu on uuden hakemiston luominen / res-kansioon nimeltä: layout-land. Kaikkia asettelu-kansiosta löytyviä xml-tiedostoja käytetään, kun toiminta käynnistyy uudelleen ja määrittää puhelimen olevan vaakasuunnassa. Katso kuva D.

Kuvio D

Napsauta kuvia suurentaaksesi.

Olen luonut demo-ohjelman, jonka avulla voit nähdä kaikki nämä lähestymistavat. Sen voi ladata täältä. Seuraavaan kertaan, onnellinen koodaus!

© Copyright 2021 | mobilegn.com