pas de zender op het creëren van een aangepaste androïde,,,,,,,,,, 81, eenheid, 25,,,,,,, de delen van het netwerk, maandag wat in tuts + koers zal dalen tot slechts drie dollar.Niet' niet missen.,,,,,, je creëert, in, in zijn meest elementaire vorm, een zender is een als volgt:,, het gebruik van een van de belangrijkste vertegenwoordigers van het scherm en de lijst en het begin van de toepassing, de installatie van apparatuur, met andere woorden, in Het. Is dat van toepassing is, drukt u op de knop.Tenzij je al voorzien van een aangepaste zender, u momenteel met komt met je androïde installatie van de standaard starter.Veel van de fabrikant van de apparatuur heeft z 'n eigen bij verstek, speciaal de zender in overeenstemming met de exclusieve zien en voelen, zoals Samsung touchwiz htc gevoel, en, in de handleiding, creëren we een eenvoudige zender is een fundamentele gebruikersinterface.Het zal twee scherm: een familie scherm apparatuur behang, scherm icoon en de installatie van apparatuur voor de toepassing van de op de details van de procedure, 1.Je moet de volgende vereisten, de installatie en de configuratie van de machine, de ontwikkeling van je androïde SDK:,, gereedschap, verduistering ide 3.7.2 of hogere ADT plug - ins, of een androïde is, een androïde 2.2 of hoger ,,, je kunt downloaden SDK zijn instrumenten die androïde een portaal,,, 2.Het project is, de lancering en het creëren van een nieuwe androïde toepassing van het project.Mijn naam simplelauncher toepassing van,,, maar je kan het noemen wat je wil. om ervoor te zorgen dat je een unieke pakket.De laagste SDK versie, we zender froyo, steun en het doel is SDK, jelly Bean,.,,,,, omdat we wil niet het creëren van een activiteit, te kiezen, het creëren van activiteiten.Klik op de voltooiing van blijven, ,,,,,,, 3.De lijst van de projecten, de volgende stap is de wijziging van , XML, bij de activiteiten twee documenten.Ten eerste, de activiteiten, de scherm.We namen, homeactivity, weergegeven.,,, < activiteiten: naam van de androïde = "Ah. Hathi. Simplelauncher androïde. Homeactivity" label = "eenvoudige zender thuis" androïde betreft = "@ - stijl /behang. Notitlebar. Volledige" androïde launchmode = "singletask" - statenotneeded = "waar" > < bedoeling filter > < actie - naam = "androïde. Bedoeling. Actie. De belangrijkste" > < de androïde. Naam: "de androïde. Bedoeling. Categorie." /> < categorieën: de naam = "; robot. Bedoeling. De categorie" >. De Standaard < /bedoelingen filters > < /activiteiten >,, door toevoeging van categorieën, android.intent.category.home, en de androïde. Bedoeling. Categorie. Bij verstek, de bedoeling van de filter, groep, verenigingED, de activiteiten, het gedragen als een zender en een optie voor een druk op de knop op je apparatuur naar huis.,, moeten we ook geregeld launchmode,,, singletask, om ervoor te zorgen dat de slechts een voorbeeld is, activiteiten, door het systeem te allen tijde gehouden.Geeft de gebruiker de behang, betreft , thema 's, behang. Notitlebar. Scherm, de, en, ten tweede, activiteiten, moeten we nog blijkt dat de toepassing van de in de installatie van apparatuur.Het is ook verantwoordelijk voor het begin van de toepassing.We hebben geen speciale toewijzing, activiteiten.De naam van het appslistactivity,.,,, < activiteiten: naam van de androïde = "Ah. Hathi. Simplelauncher". Appslistactivity androïde: thema 's = "@ - stijl /betreft. Notitlebar. Volledige" > < /activiteiten >,, 4.De indeling van activiteiten, het creëren van een XML - documenten van de , homeactivity van dergelijke projecten, res /lay - out, MAP genaamd , activity_home. XML,.De indeling is één druk op de knop, reactie op de gebeurtenissen.Klik op de knop aan de gebruiker van het scherm van de toepassing van de lijst van programma 's, < xmlns:Android = "(schema http://schemas.android.com/apk/res/android' xmlns: instrumenten http://schemas.android.com/tools Android:layout_width = =" "" "" match_parent Android: layout_height = match_parent instrumenten: "achtergrond". Homeactivity "> < - knop id =" @ + ID /apps_button "Android:layout_width =" wrap_content "Android:layout_height =" wrap_content "Android:layout_alignparentright =" waar "- layout_alignparenttop =" waar "- layout_marginright =" 10dp "Android:layout_margintop =" 10dp "androïde: tekst =" een programma "- onclick=" showapps ">< /(schema >,, de volgende stap is het creëren van een XML - bestand van de , appslistactivity, projecten in de categorie, res /lay - out, MAP genaamd , activity_apps_list. XML,.De indeling van een , m, neemt het hele scherm.,, <?De XML - = "1" codering = "utf - 8"?> < hiërarchie xmlns:Android = "http://schemas.android.com/apk/res/android" Android:layout_width = "match_parent" Android:layout_height = "match_parent" androïde: - = "verticale" > Android:id < m = "+ ID /apps_list" Android:layout_width = "match_parent" Android:layout_height = "match_parent" > < /lijst van mening > < /en, tot slot, de hiërarchie > op dezelfde locatie en naam van list_item , het creëren van een derde van het XML - bestand, XML,.Dit document wordt in een project lay - out, M.Elke lijst van mening dat de toepassing van de installatie van een op de gebruikers van apparaat.Het blijkt dat de toepassing van de logo, etiket, en de naam van het pakket.We zien toepassing van het gebruik van icoon, ImageView, voorbeelden en , structuur, etikettering en het pakket voor voorbeelden.,, <?De XML - = "1" codering = "utf - 8"?> < xmlns:Android = "(schema http://schemas.android.com/apk/res/android" Android:layout_width = "match_parent" Android:layout_height = "match_parent" gevuld "10dp = androïde:" > < ImageView Android:ID = "+ ID /item_app_icon" Android:layout_width = "wrap_content" Android:layout_height = "wrap_content" Android:layout_alignparentleft = "waar" - layout_centervertical = "." /> < Android:ID = "structuur" + ID /item_app_label "Android:layout_width =" wrap_content "Android:layout_height =" "" "wrap_content Android:layout_torightof = + ID /item_app_icon" Android:paddingleft = "10dp" /> <Structuur Android:id = "@ + ID /item_app_name" Android:layout_width = "wrap_content" Android:layout_height = "" "" wrap_content Android:layout_below = + ID /item_app_label "Android:layout_torightof =" + ID /item_app_icon "Android:paddingleft =" 10dp "/> < /relatieve indeling >,, 5. De uitvoering van activiteiten In het ,,,,, homeactivity, met toepassing van de regeling te creëren, is het tijd creëren, de activiteiten van klasse.Het creëren van twee soorten was, om ervoor te zorgen dat elke soort naam je lijst van projecten als de aangewezen documenten.,, het creëren van een nieuwe klasse van nomenclatuur, homeactivity, en , android.app.activity, als de ouder. Ah.hathi.simplelauncher,, pakket; de invoer van android.app.activity; de invoer van android.content.intent; de Invoer van android.os.bundle; de invoer van android.view.view; - de uitbreiding van de activiteiten in de homeactivity {beschermde nietig oncreate (pakket savedinstancestate {-). OnCreate (savedinstancestate); setContentView (r.layout. Activity_home);} de leegte showapps (overzicht) {bedoelingen ik = nieuwe opzet (dit appslistactivity.); startActivity (ik);}},, in de categorie , ik onCreate methode, ,Nvoke, setContentView, na we eerder te lay - out.Misschien weet je het nog, onze , activity_home toe te voegen aan de knop , lay - out voor een genoemd, showapps, we moeten nu . in , de wijze van uitvoering van homeactivity, klasse.De uitvoering is heel eenvoudig, creëren we een , met de bedoeling, als , appslistactivity, klas begint het.,,,,, appslistactivity, het creëren van een activiteit, klasse, appslistactivity, en , android.app.activity, als de ouder. in de categorie , onCreate voor , , noemen we setContentView ,,, na , activity_apps_list, we indeling eerder gemaakt,, pakket. Ah.hathi.simplelauncher; de invoer van android.app.activity; de invoer van android.content.intent; de invoer van android.os.bundle; de invoer van android.view.view; de uitbreiding van de activiteiten in de appslistactivity {beschermde nietig oncreate (pakket savedinstancestate {-). OnCreate (savedinstancestate setContentView); (r.layout. Activity_apps_list);}},Hoewel onze zender is nog niet klaar, je kan redden op dit punt op uw verzoek.Als je de knop pers apparatuur, moet je zien een pop - up je vragen, wil je zender gebruikt.,,,,, als je de keuze van de zender , eenvoudig, thuis, moet je naar je nieuwe thuis scherm rechts boven in de hoek van de Top van scherm van een de knop.Je moet ook je apparatuur van de huidige behang.,,,,, naar het creëren van een soort eclips van de nomenclatuur, appdetail, bevat een specifieke toepassing van het pakket, de naam, de etikettering, en de toepassing van een icoon.De interface is zeer eenvoudig, zoals je kunt zien, ah.hathi.simplelauncher., pakket; de invoer van android.graphics.drawable.drawable; de cursus appdetail {karakter tags; karakter... Namen, pictogrammen;}, 6.Om de toepassing van de in loadapps,,,, , appslistactivity, klas, we gebruiken, queryintentactivities, , PackageManager wijze alle , met de bedoeling, een soort van , category_launcher bedoelingen.De toepassing van vraag terug kan door de zender lijst.We fietsen door de resultaten van het onderzoek, en van elke toevoeging van een "in de lijst van toepassing".In het volgende fragment, even voor de duidelijkheid, de particuliere PackageManager manager, privé - lijst < appdetail > toepassing; particuliere nietig loadapps () {manager = getpackagemanager (); de toepassing van de nieuwe arraylist = < appdetail > (); de bedoeling ik = nieuwe opzet (intent.action_main, nul); i.addcategory (bedoelingen. Category_launcher); tabel < resolveinfo > availableactivities = manager. Queryintentactivities (I, 0); (resolveinfo RI:availableactivities) {appdetail programma = nieuwe appdetail (); app.label = ri. Loadlabel (directeur); app.name = ri.activityinfo.packagename; app.icon = ri. Activityinfo. LoadIcon (Directeur); toevoeging van toepassing. App);}}, 7.Een lijst van de aanvragen, en , toepassingen, met inbegrip van alle details, we moeten variabelen, kan aantonen dat de toepassing van de , de lijst van categorieën m, . creëren we een eenvoudige, ArrayAdapter, en die verder gaan dan het getview, methode te maken van de Lijst van projecten.En dan gaan we associatie van de adapter, M.,, lijst van particuliere m; particuliere nietig loadlistview () {lijst = (m) findViewById (r.id.apps_list); ArrayAdapter < appdetail > adapter = nieuwe ArrayAdapter < appdetail > dit punt r.layout.list_item, apps) {- de openbare mening van de positie van de getview (int moeder, om convertview, oog - groep) {als (convertview = = = = = = = = = = = = = nul) (convertview getlayoutinflater (). De uitbreiding (r.layout.list_item, nul);} ImageView appicon = (foto 's, convertview. FindViewById (r.id.item_app_icon); appicon. Setimagedrawable (van toepassing zijn (plaats). De structuur applabel. Icoon) = (structuur); convertview. FindViewById (r.id.item_app_label); applabel. SetText (toepassing van het programma. De Lab (plaats).EL); wijziging van de structuur convertview = (structuur). FindViewById (r.id.item_app_name); wijziging van de instellingen (van toepassing. Zijn (plaats). De naam); terug naar convertview;}}; de lijst. Setadapter (adapter);}, 8.Luister, klik, als de gebruiker op een project in m ,,, de overeenkomstige toepassing moeten worden door onze zender.We gebruiken , getlaunchintentforpackage, , een methode voor de klasse, creëren, met de bedoeling, en met de toepassing ervan.Zie de volgende stukje code kijken.,, particuliere nietig addclicklistener () {lijst. Setonitemclicklistener (nieuwe adapterview. Onitemclicklistener () {- de leegte onitemclick (adapterview <?> AV, oog V, int de producentenorganisaties, generaal id) {bedoelingen ik = manager. Getlaunchintentforpackage (van toepassing. (-). De naam. Tostring ()); appslistactivity. Deze. StartActivity (i);}});},, 9.Allemaal samen en doen alles samen te werken. We moeten noemen, loadapps, loadlistview,,,, addclicklistener, in , onCreate,, appslistactivity methoden, zoals blijkt uit onderstaande tabel.,, beschermde nietig oncreate (pakket savedinstancestate {-). OnCreate (savedinstancestate setContentView (); r.layout. Activity_apps_list) (de); loadapps; loadlistview () (); addclicklistener;}, samenstelling en werking van de toepassing van je weer te zien.Je moet nu kunnen zien als je kan worden afgeleid op onze zender scherm gebruikt.Een project in de lancering van overeenkomstige toepassing op de .,,,,,, conclusies, en nu heb je je eigen persoonlijke zender.Dit is een fundamentele, maar kan je al je pas als je wilt.Als je dieper wou graven op de zender, moedig ik u aan om in het voorbeeld van de toepassing van kijken androïde ontwikkelaars portaal.
Op basis van de androïde
Previous:Jonathan Swift: 2