Java-Programmierung für Android-Entwickler für Dummies

"Ich muss eine verbesserte erstellen für

Erklärung. Kann jemand daran erinnern, mich wie eine verbesserte codieren für Erklärung? Und während Sie gerade dabei sind, wie kann ich eine Ausnahme zu fangen? Wo kann ich alle, dass Java Sachen schnell zu finden? "

Sie finden das ganze Zeug hier in diesem Spickzettel. Das Java-Programm in diesem Spickzettel Code-Schnipsel enthält viele Java wichtigsten Sprachfunktionen darstellen, einschließlich Switches, Streicher, Pausen, ob . . . sonst Aussagen und Arrays. Als zusätzlichen Bonus, geht das Programm sogar einen schlauen Hinweis auf diesen klassischen Marx Brothers Film enthält, Animal Crackers. Genießen!

Paket com.example.cheetsheet-Import java.util.ArrayList-Import javax.swing.JOptionPane-public class Cheatsheet {int myInt = 42-double myDouble = 27649,00-boolean myBoolean = true-public static void main (String [] args) {neue Cheatsheet () -} public Cheatsheet () {char MyChar = 'B'-String myString = "Hallo" -ArrayList myList = new Arraylist() -string [] Arr = { "Dieses", "ist", "eine", "Array". } -System.out.println (MyInt) -System.out.println (MyChar) -JOptionPane.showMessageDialog (null, myString) -System.out.println (myInt + "" + myString + "" + myDouble) -String stringIn = JOptionPane.showInputDialog ( "eine Zahl von 1 bis 10 Geben Sie") - try {myInt = Integer.parseInt (stringIn) -} catch (Number e) {e.printStackTrace () -} if (myInt lt; 5) {System.out.println ( "Small") -} else {System.out.println ( "Large") -} if (myBoolean) {System.out.println ( "Ja") -} Schalter (myInt) {case 1: System.out.println ( "One") - Break-Fall 2: Fall 3: System.out.println ( "Eine kleine Zahl") - Break-default: System.out.println ( "Eine Menge" -break-)} for (int i = 0-i lt; 10- i ++) {System.out.print (i) -System.out.print ( "") -} System.out.println () - int i = 0-while (i lt; 10) {System.out.print (i ++ + "") -} System.out.println () - int j = 0-do {System.out.print (j ++) - System.out.print (j le; 9 ",": "") -} while (j? lt; 10) -System.out.println () - myList.add ( "Drei") -myList.add ( "Cheers") -myList.add ( "for") -myList.add ( "Kapitän") -myList.add ( "Spaulding") - für (String Wort: myList) {System.out.print (Wort) -} System.out.println () - System.out.println (addPeriod ( "Spaulding")) - für (int n = 0- n lt; myArray.length- n ++) {System.out.print (arr [n]) -} System.out.println () -} String addPeriod (String string) {return string + "." -}}

So erstellen Sie eine wirklich einfache Android App

Also, wollen Sie die Grundlagen der Android-App-Entwicklung in ein kleines Beispiel zu sehen? Wie über die App, die Eclipse-automatisch für Sie erstellt? Zu einfach? Wie wäre es eine Schaltfläche und ein Menü hinzuzufügen?

Diese Beispielanwendung hat drei Zustände. Zunächst sehen Sie eine Schaltfläche mit den Worten: Klick mich auf seinem Gesicht. Wenn Sie auf die Schaltfläche klicken, ändert sich der Text der Schaltfläche Ich habe geklickt.

Bei den meisten neueren Android-Geräte, rufen Sie das Menü der Aktivität durch ein kleines Symbol in einer Ecke des Bildschirms Aktivität klicken. (In der Regel enthält das Symbol drei Punkte in einer vertikalen Linie.) Wenn Sie dieses Menü-Symbol klicken, wird die einfache Aktivität zeigt Ihnen nur eine Option - die Option zum Zurücksetzen. In der Beispielanwendung, wenn Sie dann auf Zurücksetzen klicken, kehrt der Schaltfläche Text Klick mich.

Eine einfache App Haupttätigkeit

Diese Auflistung enthält die Haupttätigkeit der App. Die Linien, die Sie selbst eingeben, werden in Fettdruck gesetzt. Die anderen Linien (die Linie, die von Eclipse erstellt automatisch, wenn Sie ein neues Android-Projekt zu starten) werden in normaler Schrift gesetzt.

Paket org.allyourcode.simpleactivity-Import android.app.Activity-Import android.os.Bundle-Import android.view.Menu-Import android.view.MenuItem-Import android.view.View-Import android.widget.Button öffentlichen Klasse MainActivity erstreckt Aktivität { Knopf Knopf-@Overrideprotected Leere onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState) -setContentView (R.layout.activity_main) -Taste = (Button) findViewById (R.id.button1) -} @Overridepublic Boolean onCreateOptionsMenu (Menü-Menü) {getMenuInflater (). Aufblasen (R.menu.main, Menü) -return Echt-} public void whenButtonclicked (View-Ansicht) {button.setText (R.string.ive_been_clicked) - }  @Override public boolean onOptionsItemSelected (MenuItem Artikel) {if (item.getItemId () == R.id.menu_reset) { button.setText (R.string.click_me) -}Rückkehr super.onOptionsItemSelected (Artikel) - }}

Um diesen Gutscheincode funktioniert, haben Sie ein paar zusätzliche Goodies zu definieren. Insbesondere müssen Sie die folgende:

  • Eine Taste auf Ihrer Haupttätigkeit des Layout

  • Ein Layout-Datei für Ihr Menü

  • Ein paar String-Werte

Sie können all diese Dinge mit Eclipse Point-and-Click-Tools erstellen, aber hier können Sie den Code zu sehen. (Manchmal ist es einfacher, Code zu schreiben, als viele Zeigen und Klicken zu tun.)

Das Layout der Hauptaktivitätsdatei

Diese Auflistung enthält den Code für das Layout der Haupttätigkeit.

Android: id = "@ + id / button1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_below="@+id/textView1"android:layout_centerHorizontal="true"android:layout_marginTop="32dp"Android: onclick = "whenButtonclicked"Android: text = "@ Zeichenfolge / click_me" />

Sie setzen den Code in Listing 2 in Ihrer Projekt res / Layout / activity_main.xml Datei. Viele Variationen auf den Code in Listing 2 Arbeit ebenso gut. In Listing 2 sind die wichtigsten Elemente die, die fett dargestellt - eine ID für die Schaltfläche (@ + Id / button1 oder @ + Id /was auch immer), Um den Namen der Methode eine Schaltfläche klicken und den Text auf dem Gesicht der Schaltfläche behandeln.

Die Layout-Datei-Menü

Das Layout für das Menü gehört in Ihr Projekt res / Menü Verzeichnis. Diese Auflistung enthält den Code.

lt;? xml version = "1.0" encoding = "utf-8">

Ein Menü-Layout-Datei enthält eine oder mehrere Artikel Elemente. In dieser einfachen Anwendung des Artikels, hat das Menü nur eine Option. So ist die Layout-Datei hat nur ein Artikel Element.

Das Beispiel ist Artikel Element hat zwei Attribute:

  • Das Android: id Attribut identifiziert das Element.

    In der Haupttätigkeit, die Android: id Wert entscheidet, ob der Benutzer hat oder nicht diesen Menüpunkt angeklickt:

if (item.getItemId () == R.id.menu_reset)

  • Das android: title Attribut bestimmt den Text, der zusammen mit dem Menüpunkt erscheint.

    In Listing 3, der Name @ String / Reset bezieht sich auf ein Element zu dem Projekt hinzugefügt strings.xml Datei.

Der Text des Projekts Strings

Das strings.xml Datei wohnt im Projekt res / Werte Verzeichnis. In dem strings.xml Datei, werden alle Beschriftungen im Code verwendet werden definiert. (Siehe folgende Auflistung.)

lt;? xml version = "1.0" encoding = "utf-8">Einfache AktivitätEinstellungenHallo Welt!Klick michI 've angeklicktzurückstellen

An anderer Stelle im Projekt, das Name in dieser Auflistung Attribute anstelle der Saiten verwendet Klick mich, Ich habe geklickt, und zurückstellen. Beispielsweise die Namen R.string.click_me und R.string.ive_been_clicked erscheinen in der Haupttätigkeit Auflistung und der Layout-Datei Haupttätigkeit. Und die Referenz @ String / Reset erscheint in der Layoutdateiliste-Menü.

Eine Doppel Anführungszeichen hat eine besondere Bedeutung in XML-Dokumenten. Zum Beispiel in den Text-Strings Auflistung, die Anführungszeichen in name = "click_me" Ihnen sagen, wo die Name Attributwert beginnt und endet. In gleicher Weise wird ein einfaches Anführungszeichen (ohne Backslash) hat eine besondere Bedeutung in XML. Also, in den Text-Strings, verwenden Sie die Kombination 'ein Apostroph im Wort zu setzen Ich habe. Die Kombination ' genannt wird, ein Flucht Sequenz. Die Escape-Sequenz teilt dem Computer mit, dass Sie eine gewöhnliche einfache Anführungszeichen verwenden, ohne besondere Bedeutung vorgesehen.

Drehen Standard-Oracle Java in Android Java

Hier ist das Szenario: Sie haben eine Killer-Applikation, die in Java geschrieben. Die App läuft auf Windows- und Macintosh-Betriebssysteme. Die App läuft nicht auf einem mobilen Gerät (weil Java SE Programme laufen nicht auf mobile Geräte).

Sie wollen wissen, wie die App aussieht, wenn es auf einem Android-Gerät läuft. Und hier ist noch eine Sache: Sie haben keine ernsthafte Gedanken machen wollen. Das wäre zu viel Stress bedeuten!

Ein Java-Programm für einen Desktop-Computer oder Laptop

Können Sie schnell und mechanisch die App in eine Android App verwandeln? Sie können. Beginnen Sie mit dem einfachen Programm in dieser Auflistung.

Paket com.allmycode.tickets-Import javax.swing.JOptionPane-public class Ticketpreis {public static void main (String [] args) {String ageString-int age-String Preis-ageString = JOptionPane.showInputDialog ( "Alter?") - age = Integer.parseInt (ageString) -wenn (Alter lt; 18 || 65 lt; = Alter) {price = "$ 7,00" -} else {price = "$ 10.00" -} JOptionPane.showMessageDialog (null, Preis, "Ticket-Preis", JOptionPane.INFORMATION_MESSAGE) -}}

Der Code in dieser Auflistung fordert den Benutzer für eine Reihe (das Alter des Benutzers). Wenn der Benutzer ein Kind ist oder ein Senior, ist der Ticketpreis nur 7,00 $. Ansonsten ist der Ticketpreis $ 10,00.

Um dieses Angebot in eine Android App konvertieren, gehen Sie wie folgt vor:

  1. Mit Eclipse erstellen Sie ein Android-Projekt.

  2. In der Layout-Datei Haupttätigkeit, erstellen Sie mindestens drei Widgets: eine Text bearbeiten Widget, a Taste Widget und ein Textview Widget.

EIN res / Layout / activity_main.xml Datei

Hier ist ein Beispiel-Layout-Datei.

Android: onclick = "whenButtonclicked"Android: text = "@ Zeichenfolge / einreichen"/> 

Im dieses lhenden, the editText1 Feld ist, wo der Benutzer sein oder ihr Alter eintritt. Der Benutzer klickt auf den button1 Widget, um die App zu sagen Ticketpreis zu berechnen, und dann wird der Ticketpreis erscheint in der textView1 Feld.

Im nächsten Schritt, einen Sinn geben Sie die @string Dinge aus dieser zweiten Liste.

Eine res / Werte / strings.xml Datei

Hinzufügen Schnur Elemente der App strings.xml Datei, wie gezeigt in Dies Auflistung.

lt;? xml version = "1.0" encoding = "utf-8">Ticket PreisEinstellungenHallo Welt!Geben Sie Ihr Alter hiereinreichenTicket Preis

Die fett gedruckte Linien in dieser Auflistung bieten Bedeutungen für die Namen @ Zeichenfolge / enter_age, @ Zeichenfolge / einreichen, und @ Zeichenfolge / ticket_price in der Layout-Datei Aktivität.

Dies ist Ihre Chance, Ihre App verwendbar für die Leser auf der ganzen Welt zu machen. Um zum Beispiel die Französisch Übersetzung Ihrer App zu erstellen, fügen Sie ein res / Werte-fr Verzeichnis für das Projekt. In einem strings.xml Datei in der res / Werte-fr Verzeichnis, verwenden Sie den gleichen Namen Attribute (enter_age, einreichen, und Ticket Preis). Aber zwischen den einzelnen Start-Tag und End-Tag, legen Sie die Französisch Übersetzung des Textes, der auf dem Bildschirm des Benutzers angezeigt wird. Wenn Französisch sprechenden Kunden Ihre Anwendung verwenden, sehen sie den Text in ihrer Muttersprache.

Die Haupttätigkeit

Fügen Sie den Code auf der Java-Datei der Hauptaktivität, wie in dieser Auflistung gezeigt.

Paket com.example.ticketprice-Import android.app.Activity-Import android.os.Bundle-Import android.view.Menu-Import android.view.View-Import android.widget.EditText-Import android.widget.TextView öffentlichen Klasse MainActivity erstreckt Aktivität { EditText editText- Textview textView-@Overrideprotected Leere onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState) -setContentView (R.layout.activity_main) -editText = (EditText) findViewById (R.id.editText1) -Textview = (Textview) findViewById (R.id.textView1) -} public void whenButtonclicked (View-Ansicht) {String ageString-int alters-String preis-(AgeString = editText.getText) toString (). -age = Integer.parseInt (ageString) -if (Alter lt; 18 || 65 lt; = Alter) { Preis = "$ 7,00" -} Else { Preis = "$ 10.00" -}textView.setText (Preis) - }@Overridepublic Boolean onCreateOptionsMenu (Menü-Menü) {getMenuInflater (). Aufblasen (R.menu.main, Menü) -return Echt-}}

In Listing 2, ist der Knopf auf Knopfdruck Attribut-Wert whenButtonclicked. So in Listing 4, antworten Sie auf einen Klick auf den Button mit dem neuen whenButtonclicked Verfahren. Dies whenButtonclicked Verfahren enthält die meisten der Aussagen, die in der ursprünglichen Standard-Java-Programm. Der große Unterschied ist die Art, wie Sie Text aus dem Benutzer zu bekommen, und die Art, wie Sie die Ergebnisse auf dem Bildschirm des Benutzers angezeigt werden soll.

  • In der Standard-Java-Programm, das Sie verwenden JOptionPane zu erstellen Dialogfelder. Die Boxen der Benutzer zur Eingabe auffordern, und die Ergebnisse des Programms angezeigt werden soll.

  • Im Android Java-Programm, verwenden Sie die Widgets auf dem Bildschirm des Aktivität für Eingang und Ausgang. Nachdem erklärt Text bearbeiten in der Nähe der Start des Codes, rufen Sie editText.getText (). toString () die Eingabe des Benutzers zu holen. Und da erklärt Textview in der Nähe der Start des Codes, rufen Sie textView.setText (Preis) die Programmergebnisse anzuzeigen.

Und dort haben Sie es - ein Android-Programm von einem Standard-Java-Programm!

Menü