Inhoudsopgave:
- Een Java-programma voor een desktop- of laptop
- Een res / layout / activity_main. xml-bestand
- Voeg
- Voeg code toe aan het Java-bestand van de hoofdactiviteit, zoals weergegeven in deze lijst.
Video: Linux Tutorial for Beginners: Introduction to Linux Operating System 2024
Dit is het scenario: je hebt een geweldige app, geschreven in Java. De app werkt op de Windows- en Macintosh-besturingssystemen. De app werkt niet op een mobiel apparaat (omdat Java SE-programma's niet op mobiele apparaten worden uitgevoerd).
U wilt weten hoe de app eruitziet wanneer deze op een Android-apparaat wordt uitgevoerd. En hier is nog een ding: u wilt geen serieus denken doen. Dat zou te veel stress inhouden!
Een Java-programma voor een desktop- of laptop
Kunt u de app snel en mechanisch veranderen in een Android-app? Jij kan. Begin met het eenvoudige programma in deze lijst.
pakket com. allmycode. kaartjes; importeer javax. schommel. JOptionPane; public class TicketPrice {public static void main (String [] args) {String ageString; int leeftijd; String prijs; ageString = JOptionPane. showInputDialog ("Age?"); age = Geheel getal. parseInt (ageString); if (leeftijd <18 || 65 <= leeftijd) {price = "$ 7. 00";} else {prijs = "$ 10. 00";} JOptionPane. showMessageDialog (null, price, "Ticket price", JOptionPane. INFORMATION_MESSAGE);}}
De code in deze lijst vraagt de gebruiker om een nummer (de leeftijd van de gebruiker). Als de gebruiker een kind of een senior is, is de ticketprijs slechts $ 7. 00. Anders is de ticketprijs $ 10. 00.
Ga als volgt te werk om deze vermelding naar een Android-app te converteren:
-
Met Eclipse maakt u een Android-project.
-
Maak in het lay-outbestand van de hoofdactiviteit ten minste drie widgets: een EditText-widget, een Knop-widget en een TextView-widget.
Een res / layout / activity_main. xml-bestand
Hier is een voorbeeldlay-outbestand.
"android: layout_width =" wrap_content "android: layout_height = "wrap_content" android: layout_below = "@ + id / editText1" android: layout_centerHorizontal = "true" android: layout_marginTop = "18dp" android: onClick = "whenButtonClicked" android: text = " @ string / submit" />
In is dit veld e editingText1 waar de gebruiker zijn of haar leeftijd invoert.De gebruiker klikt op de widget knop1 om de app te vertellen een ticketprijs te berekenen en vervolgens wordt de prijs van het ticket weergegeven in het veld textView1 .
Een res / waarden / tekenreeksen. xml-bestand
Voeg
tekenreeks elementen toe aan de -reeksen van de app. xml bestand, zoals weergegeven in deze lijst. Instellingen ticketprijzen Hallo wereld!
Voer hier uw leeftijd in Verzenden Ticketprijs De vetgedrukte regels in deze lijst bieden betekenissen voor de namen @ string / enter_age, @ string / submit en @ string / ticket_price in het lay-outbestand van de activiteit.
Dit is uw kans om uw app bruikbaar te maken voor lezers over de hele wereld. Als u bijvoorbeeld de Franse vertaling van uw app wilt maken, voegt u een map res / values-fr toe aan het project. In een snaar. xml-bestand in de map res / values-fr, gebruik dezelfde naamkenmerken (enter_age, submit en ticket_price). Maar tussen elke start-tag en eind-tag zet je de Franse vertaling van de tekst die op het gebruikersscherm verschijnt. Wanneer Franstalige klanten uw app gebruiken, zien ze de tekst in hun moedertaal.
De hoofdactiviteit
Voeg code toe aan het Java-bestand van de hoofdactiviteit, zoals weergegeven in deze lijst.
pakket com. voorbeeld. ticket prijs; importeer android. app. Activiteit; importeer android. os. Bundel; importeer android. uitzicht. Menu; importeer android. uitzicht. Uitzicht; importeer android. widget. Tekst bewerken; importeer android. widget. Tekstweergave; public class MainActivity breidt activiteit uit {
EditText editText; TextView-tekstView; @Override protected void onCreate (Bundle savedInstanceState) {super. onCreate (savedInstanceState); setContentView (R layout.activiteit_hoofd); editText = (EditText) findViewById (R, id, editText1); textView = (TextView) findViewById (R, id, tekstView1); } public void whenButtonClicked (View view) { String ageString; int age; Stringprijs; ageString = editText. getText (). toString (); age = Geheel getal. parseInt (ageString); if (leeftijd <18 || 65 <= leeftijd) { prijs = "$ 7. 00"; } else { price = "$ 10. 00"; } TextView. setText (prijs); } @Override public Boolean onCreateOptionsMenu (Menu menu) {getMenuInflater (). opblazen (hoofdmenu., menu); return true;}} In Listing 2 heeft het onClick-attribuut van de knop een waarde wanneer Button ingedrukt is. Dus in listing 4 reageer je op een klik op de knop met je nieuwe whenButtonClicked-methode. Deze methode whenButtonClicked bevat de meeste instructies in uw oorspronkelijke standaard Java-programma. Het grote verschil is de manier waarop u tekst van de gebruiker ontvangt en de manier waarop u resultaten op het scherm van de gebruiker weergeeft.
In het standaard Java-programma gebruikt u JOptionPane om dialoogvensters te maken. De vakjes vragen de gebruiker om invoer en geven de resultaten van het programma weer.
-
In het Android Java-programma gebruikt u de widgets op het activiteitenscherm voor invoer en uitvoer. Na het declareren van editText bij het begin van de code, roept u editText aan.getText (). toString () om de invoer van de gebruiker op te halen. En nadat u textView hebt opgegeven nabij het begin van de code, roept u tekstView aan. setText (prijs) om de resultaten van het programma weer te geven.
-
En daar heb je het - een Android-programma van een standaard Java-programma!