begyndt med google maps for androide: mellemliggende

, begyndt med google maps for androide: mellemliggende,,,,, 15,,,,,,,,, 31,,,,,,,,,, det cyber - mandag envato tuts + kurser vil blive reduceret til $3.- og' t miss. denne post er en del af en serie kaldet begyndt med google maps for androide. begyndt med google maps for androide: basicsgetting begyndte med google maps for androide: avancerede, indledning, en af de mest nyttige elementer til   brugere er kort integration.i   tidligere udbetaling af denne serie, vi har drøftet, hvordan man kan oprette google maps for robotter med google udvikler konsol, og hvordan man kan skabe en grundlæggende google maps fragment.så gik vi over, at forskellige slags markører, og hvordan man trækker på kortet.,, i denne forelæsning, vil du tale om, hvad du har lært i den sidste artikel, med henblik på at fastlægge synspunkter på toppen af et kort, omgå indendørs niveau vælgeren kontrol, og tilføje en   street view   komponent til din   ansøgninger.kildekoden   for denne artikel, kan findes på github.,,, 1.ved at blive oprettet, til at begynde med, følger de foranstaltninger, der er anført i   tidligere   artikel i   denne serie   med henblik på at skabe et grundlæggende projekt ved en  , mapfragment, tillægger det en  , aktivitet og aktivere google maps api - gennem   google udviklere konsol.for resten, du behøver ikke at bruge de steder, spiller tjenesteydelser klasser, men du er nødt til at importere kort spille bibliotek i deres  , bygge. gradle,  , afhængighed,   node.,, områder {udarbejde filetree (dir.: "libs, omfatter: [." "jar ']) udarbejde, kom. - androiden. støtte: appcompat-v7:23.0.0" udarbejde kom. google. androide. gms spiller tjenesteydelser kort: 7.8.0'), og, når det er gjort, ender du med en skærm, der ligner   følgende:,,,,, næste, du er nødt til at nedsætte dit kamera.for resten, vil vi fokusere på madison square garden i new york, fordi det er et godt eksempel på en bygning efter indendørs niveau kort., i  , onviewcreated, kan du tilføje en opfordring til de følgende hjælper metode  , initcamera,.kan du huske, at vi er nødt til at vente, indtil  , onviewcreated,   arbejde med google maps, for det er, når vi kender de kort objekt er klar til brug.,, private tomrum initcamera() {cameraposition holdning = cameraposition. builder(). mål (nye latlng (40.7506, -73.9936). zoom (18f). med (0.0f). - (0.0f). build(); getmap(). animatecamera (cameraupdatefactory. newcameraposition (stilling), null); getmap(). setmaptype (googlemap.map_type_hybrid)}, ovennævnte metode bevæger kameraet til vores mål og zoomer ind så tæt på, at den indendørs vælgeren bliver synligt.du vil se, at der er et bånd af numre på højre side af skærmen, og en overlay - på kortet for hver etage.når du vælger en anden plan for lige, den nuværende plan ansporer til den nye.det er karakteristisk, at de vil arbejde med senere for at have deres egen mening kontrolniveau udvælgelse.,,,,, næste, du er nødt til at   gennemføre tre grænseflader, der anvendes i denne forelæsning.,,, googlemap. onindoorstatechangelistener,   anvendes for at fastslå, hvornår en indendørs niveau vælgeren har ændret sig, seekbar synlighed.. onseekbarchangelistener,   anvendes sammen med en af vores mening overheads til kontrolniveau udvælgelse, snarere end at anvende standardlisten over knapper til højre.,, googlemap. onmaplongclicklistener,   anvendes i dette eksempel for at ændre de viste, hvor din   street view   komponent.,, offentlige klasse mapfragment udvider supportmapfragment gennemfører googlemap.onindoorstatechangelistener, googlemap.onmaplongclicklistener, seekbar.onseekbarchangelistener {, når du har tilføjet de påkrævede metoder for disse tre grænseflader, kan du begynde at tilføje synspunkter på toppen af kortet., 2.simulerede synspunkter, mens den base, træk i google maps passer virkelig har brug for, vil det være, at du   ønsker at tilføje yderligere synspunkter på kortet for at udføre handlinger.for resten, vil vi tilføje en  , seekbar,   og nogle  , textview,   genstande med henblik på at bygge den kontrol med hensyn til indendørs niveau vælgeren.,, begynde med at skabe en ny xml - layout - fil,  , view_map_overlay. xml,.der tilføjes følgende kode for at skabe grundlaget layout, der vil blive anvendt på skærmen.,, <?xml - version = "0" kodning = "utf - 8"?> < relativelayout xmlns: androide = "http://schemas.android.com/apk/res/android" androide: layout_width = "match_parent" androide: layout_height = "match_parent" > < linearlayout androide: layout_width = "match_parent" androide: layout_height = "wrap_content" > < textview androide: id = "@ + id /indoor_min_level" androide: tekst = "0" androide: layout_width = "0dp" androide: layout_height = "wrap_content" androide: layout_weight = "1" androide: polstring = "4dp" androide: textsize = "20sp" androide: gravimetriske = "centret" androide: textcolor = "@ androide: farve /hvid". /> < seekbar androide: id = "@ +id - /indoor_level_selector "androide: layout_width =" 0dp "androide: layout_height =" wrap_content "androide: layout_weight =" 8 "/> < textview androide: id =" @ + id /indoor_max_level "androide: tekst =" 10 "androide: layout_width =" 0dp "androide: layout_height =" wrap_content "androide: layout_weight =" 1 "androide: polstring =" 4dp "androide: textsize =" 20sp "androide: textcolor =" @ androide: farve /hvid "androide: gravimetriske =" centret "/> < /linearlayout > < /relativelayout >,, når din indretning fil er færdig, kan du tilføje det som en overlay til dit kort stykke.i oncreateview, du har brug for at få adgang til, viewgroup, forældre,   puste dit nye layout - overlay - og knytte det til forældrene.det er også der, hvor du gemmer henvisninger til hver af de synspunkter i din "overlay", så de kan ændres senere i din app.,, @ tilsidesætte offentligheden oncreateview (layoutinflater inflater, viewgroup container, bundt savedinstancestate) (viewgroup forældre = (viewgroup), super. oncreateview (inflater, beholder, savedinstancestate), betragtning overlay = inflater. puste (r.layout.view_map_overlay, forældre, falske); mindoorselector = (seekbar) overlap. findviewbyid (r.id.indoor_level_selector); mindoorminlevel = (textview) overlap. findviewbyid (r.id.indoor_min_level); mindoormaxlevel = (textview) overlap. findviewbyid (r.id.indoor_max_level); forældre. addview ("overlay"); tilbage forældre;}, når du kører, applicaog du skulle se dit syn på toppen af kortet.det vil imidlertid også   stadig se standardværdien vælgeren, som clutters op på.,,,,, for at ordne det, skabe en ny metode, der hedder  , initmapindoorselector,   og kalder det fra, onviewcreated,.alt det har brug for at gøre, er at sætte dine lyttere for, seekbar og indendørs niveau ændringer samt deaktivere misligholdelse indendørs niveau picker.,, private tomrum initmapindoorselector() {mindoorselector. setonseekbarchangelistener (dette). getmap(). getuisettings(). setindoorlevelpickerenabled (forkert); getmap(). setonindoorstatechangelistener (det)}, nu du har din mening simulerer kortet, du er nødt til at   skjule det, før det er nødvendigt.i onviewcreated, til en ny hjælper metode, der hedder  , hidefloorlevelselector,  , der skjuler alle dine overlejret synspunkter.,, private tomrum hidefloorlevelselector() {mindoorselector. setvisibility (view.gone); mindoormaxlevel. setvisibility (view.gone); mindoorminlevel. setvisibility (view.gone)), 3.ved indendørs niveau vælgeren, med deres synspunkter har skabt og skjult, kan du begynde at tilføje med hensyn til deres synspunkter anføres, når det er nødvendigt, og interagere med kortet.tidligere, du skabte  , onindoorbuildingfocused,   metode som en del af  , googlemap. onindoorstatechangelistener,.i denne metode, er du nødt til at redde en henvisning til den bygning er i fokus, og så gemme, viser, seekbar, kontrol, når det er nødvendigt, at tilsidesætte offentlige tomrum onindoorbuildingfocused() {mindoorbuilding @ = getmap(). getfocusedbuilding(); hvis (mindoorbuilding = = for



Previous:
Next Page: