Hem Personliga finanser Hur man ger ett Java-objekt mer ansvar i din Android App - dummies

Hur man ger ett Java-objekt mer ansvar i din Android App - dummies

Video: Awesome iPhone Apps with Objective-C by Zack Chauvin 2024

Video: Awesome iPhone Apps with Objective-C by Zack Chauvin 2024
Anonim

Ibland vill du ge ditt Java-objekt mer att göra i din Android-app. Tänk på följande: Du har en skrivare och du försöker installera den på din dator. Det är en skicklig skrivare, men det gick inte med datorn, så din dator behöver ett program för att köra skrivaren: en skrivare drivrutin. Utan en förare är din nya skrivare bara en jätte pappersvikt.

Men ibland kan man hitta en drivrutin för en smärta i nacken. Kanske kan du inte hitta den skiva som följde med skrivaren.

Föreställ dig att du har en off-brand-skrivare vars drivrutin är inbyggd i sitt permanenta minne. När du ansluter skrivaren till en USB-port visar datorn en ny lagringsplats. (Platsen ser ut som vanliga användare som en annan av dators diskar.) Drivrutinerna för skrivaren lagras direkt på skrivarens internminne. Det är som om skrivaren vet hur man kör själv!

Låt oss säga att du vill visa egenskaperna hos en viss väska, och du tycker inte om att hantera en väska med nitty-gritty detaljer. I synnerhet gillar du inte att kommentera, tomma mellanslag och fältnamn när du visar en påse:

väska. snäll + "," + väska. vikt + "," +

väska. daysAged + "," + väska. isDemestic + " n"

Du vill hellre få klassen BagOfCheese för att visa hur man visar ett eget objekt.

Här är planen: Flytta den stora strängen med påsens fält, kommatecken och mellanslag från klassen MainActivity till klassen BagOfCheese . Det gör att varje BagOfCheese objekt är ansvarigt för att beskriva sig i String form. Du kan ge varje väska sin egen Display-knapp.

Den intressanta egenskapen hos en Display-knapp är att när du trycker på den, ser texten som du ser beror på påsen med ost du undersöker. Mer exakt är texten du ser beror på värdena i den aktuella formulärens fält.

Samma sak händer i den andra uppsättningen kod nedan när du ringer bag1. toString () . Java körs med toString -metoden som visas den första uppsättningen kod. De värden som används i den metodmetoden - typ , vikt , daysAged och isDemestic - är värdena i påse1 objektets fält. På samma sätt används de värden som används när du ringer bag2. toString () är värdena i fältet bag2 -objektet.

paket com. allmycode. a09_10;

allmän klass BagOfCheese {

public String kind;

allmän dubbelvikt

public int daysAged;

Offentlig Boolean är Domestic;

offentliga BagOfCheese () {

}

offentliga BagOfCheese (String kind, dubbelvikt,

int daysAged, boolean isDomestic) {

detta.snäll = slag

detta. vikt = vikt

detta. daysAged = daysAged;

detta. isDemestic = isDemestic;

}

public String toString () {

returtyp + "," + vikt + "," + daysAged + "," + isDomestic + " n";

}

}

Nu, låt oss ta en titt på att ha en väska i sig själv.

paket com. allmycode. a09_11;

importera android. Stöd. v7. app. AppCompatActivity;

importera android. os. Bunt;

importera android. widget. Textview;

import com. allmycode. a09_10. BagOfCheese;

public class MainActivity utökar AppCompatActivity {

TextView textView;

@Override

protected void onCreate (Bundle savedInstanceState) {

super. onCreate (savedInstanceState);

setContentView (R. Layout. Activity_main);

textView = (TextView) findViewById (R. Id. TextView);

BagOfCheese bag1 = new BagOfCheese ("Cheddar", 2. 43, 30, true);

BagOfCheese bag2 = ny BagOfCheese ("Blue", 5 987, 90, false);

Textview. setText ("");

Textview. lägg till (bag1. toString ());

Textview. lägg till (bag2. toString ());

}

}

I den första uppsättningen kod har objektet BagOfCheese sin egen parameterfri toString metod. Och i den andra uppsättningen gör följande två linjer två samtal till metoden toString - ett samtal för bag1 och ett annat samtal för bag2 :

textView. lägg till (bag1. toString ());

Textview. lägg till (bag2. toString ());

Ett anrop till toString beter sig olika beroende på den särskilda väskan som visas. När du ringer väska1. toString () , ser du fältvärdena för bag1 och när du ringer bag2. toString () , ser du fältvärdena för bag2 .

Om du vill ringa ett objekts metoder följer du en referens till objektet med en punkt och sedan metodens namn.

Hur man ger ett Java-objekt mer ansvar i din Android App - dummies

Redaktörens val

Organisera e-postmarknadsföring innehåll för att matcha dina mål - dummies

Organisera e-postmarknadsföring innehåll för att matcha dina mål - dummies

När du utvecklar e-postmarknadsföring innehåll, överväga hur din publik kommer att uppleva dina avsikter. E-postmeddelanden ger större mening åt dina framtidsutsikter och kunder när innehållet du skapar och levererar är knutet samman under kända teman. När din tid är begränsad kan du bli frestad att skapa e-postinnehåll som passar ditt schema bättre ...

Nya formulärinmatningstyper i HTML5 - dummies

Nya formulärinmatningstyper i HTML5 - dummies

HTML-formulär är centrerade kring det ödmjuka men flexibla inmatningselementet . HTML5 lägger till ett antal väldigt användbara former av inmatning som hjälper till att göra HTML till ett mer modernt användargränssnitt. Även om stöd för dessa taggar inte är universellt är det säkert att börja använda dem nu. Varje webbläsare (även IE6) som inte förstår den avancerade ...

Utföra visuell designtest på en ny webbplats - dummies

Utföra visuell designtest på en ny webbplats - dummies

Det visuella designteamet för en webbplats kan skapa några olika "look and feel" -alternativ och testa dem med användare. Den här designen kallas perfekt för att passera en hemsida och en inre eller undersida av din webbplats, men de är inte 100 procent korrekta när det gäller ...

Redaktörens val

Objektiv till dina digitala SLR-dummies

Objektiv till dina digitala SLR-dummies

Zoomlinser är inte den enda typen av linser som är tillgängliga för din dSLR . Du borde veta hur de skiljer sig från de andra alternativen. Här är några av alternativen till zoomlinser i allmänhet och vanliga zoomlinser i synnerhet. Prime-objektiv En primärlins har en fast brännvidd. En lins med fast fokusering ...

Hur man skapar bra belysning för din digitala fotografi - dummies

Hur man skapar bra belysning för din digitala fotografi - dummies

Ja, du kan återskapa bra belysning om du vet vad du gör. Och ingenting kan förstöra ett foto snabbare än dålig belysning. Du kan göra många förbättringar till ett utmanande ämne helt enkelt genom att använda bra belysningsteknik. Din farbrors skalliga huvud, en tonåring som är mindre än perfekt, en hård upplyst strandplats, en droppe ...

ÖKa bildförstoring med telekonverterare - dummies

ÖKa bildförstoring med telekonverterare - dummies

En telekonverter är en sekundärlins som du placerar mellan din lins och kamerokroppen (precis som förlängningsröret). En telekonverter tar emot bilden som skapats av din lins och ger en förstorad version av den till kamerans digitala sensor. Detta kan vara ett användbart verktyg i makrofotografering men kan också vara ...

Redaktörens val

Undvik hack på sårbara trådlösa arbetsstationer - dummies

Undvik hack på sårbara trådlösa arbetsstationer - dummies

Trådlösa arbetsstationer har massor av säkerhetsproblem och kan vara inriktade på hackar - från svaga lösenord till opatchade säkerhetshål till lagring av WEP- och WPA-krypteringsnycklar lokalt. De flesta av de kända trådlösa klientens sårbarheter har blivit patchade av sina respektive leverantörer, men du vet aldrig om alla dina trådlösa system är ...

Grundläggande Mac Network Settings - dummies

Grundläggande Mac Network Settings - dummies

De flesta nätverksinställningarna på en Mac är automatiska. Om du föredrar kan du titta på och ändra standardnätverksinställningarna genom att följa dessa steg: