• Keine Ergebnisse gefunden

Jetzt sollte ein Fenster erscheinen. In diesem sollte der Ordner des Projektes ausgewählt werden.

N/A
N/A
Protected

Academic year: 2022

Aktie "Jetzt sollte ein Fenster erscheinen. In diesem sollte der Ordner des Projektes ausgewählt werden."

Copied!
5
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Android Workshop

Einführung in Android:

Die vorbearbeitete App wird in Android Studio importiert:

Jetzt sollte ein Fenster erscheinen. In diesem sollte der Ordner des Projektes ausgewählt werden.

Um die App zu vervollständigen, muss lediglich ein Input Text eingefügt werden und die Formel zum Berechnen des BMI implementiert werden.

 Input Text einfügen:

Dazu muss man die Layoutdatei activity_main.xml öffnen. Dann sollte man folgendes sehen:

Abbildung 1 Layout

(2)

CC BY-NC-SA 4.0 Informatik-Werkstatt AAU 2017 SW_T_Android_BMI-Rechner-App 2/5 Informatikwerkstatt.aau.at

Ist dies geschafft, kann das Layout beliebig verändert werden. Unter dem Register Palette findet man einige Elemente, die man dem Layout hinzufügen kann. Unter TextFields (siehe Abb. 2) befindet sich das Element Number(Dezimal), das einfach per Drag and Drop an die gewünschte Position gezogen wird.

Abbildung 2 Text Fields

Um einen einfachen Text anzeigen zu lassen (wie z.B. „BMI Rechner“) wird das Element Large/Medium/Small – Text verwendet.

 Eigenschaften vom Element Input Text

Auf der rechten Seite befinden sich die einzelnen Eigenschaften eines Elementes.

Hint: Beim Input Text kann man in der Eigenschaft Hint einen Text angeben, der schon vorher im Textfield steht, bevor man in der Anwendung in das Feld einen Text eingibt (dieser verschwindet dann).

inputType: Sollte man vorher das falsche Text Field genommen haben, kann man unter der Eigenschaft inputType den Typ umstellen. (Number bewirkt auch, dass man in dieses Feld nur Nummern eingeben kann. Bei der Eingabe mit der Tastatur am Handy erscheint die Nummerntastatur).

Layout:width: Hier kann die Breite des Elements in Pixel (px) oder automatisch mit wrap_content und match_parent eingestellt werden. Wrap_content bewirkt aufgrund des gewählten Layouts über die Eigenschaft Layout:weight, wie groß das Element sein soll. Beispielsweise ordnet LinearLayout(horizontal) alle Elemente nebeneinander an. Ist der Eigenschaft Layout:weight bei 2 Elementen der Wert 0.5 zugewiesen (das entspricht 50% des umliegenden Layouts), wird die Größe der Elemente automatisch berechnet und zwar so, dass sie genau gleich groß sind. Match_parent bewirkt, dass die Breite gleich groß ist wie das umliegende Layout.

Layout:height: Bei height kann man die gleichen Einstellungen vornehmen wie bei Width.

Background: Mit Background kann man die Farbe des Hintergrunds geändert werden oder ein Hintergrundbild des Elements angeben werden.

(3)

onClick: OnClick wird bei Buttons verwendet, um dem Button über den Methodennamen eine Methode zuzuweisen, die aufgerufen werden soll, wenn der Button angeklickt wird. Diese Methode muss dann in einer Activity programmiert werden.

Id: Die Id ist der Variablenname des jeweiligen Elementes.

Src: Als Src kann der Dateipfad einer Datei angegeben werden. Diese Option gibt es beispielsweise bei einem ImageView, da hier der Dateipfad des Bildes angegeben werden muss.

Die Dateien sollten in einem Ordner in den Ressourcen liegen (mipmap-??dpi). Die verschiedenen Ordner dienen nur dazu, mehrere Auflösungen abzuspeichern. Die App wählt dann beim Starten der Activity die Auflösung selber aus.

Text: Hier kann ein beliebiger Text eingegeben werden, der in einem TextField oder Button etc. stehen soll.

TextColor: Die Eigenschaft TextColor kann entweder manuell mit dem hexadezimalen Wert eingestellt werden oder interaktiv gewählt werden, indem man daneben auf die drei Punkte klickt.

TextSize: Die Größe des Textes kann in den Einheiten Punkt (pt) oder Pixel (px) angegeben werden.

(4)

CC BY-NC-SA 4.0 Informatik-Werkstatt AAU 2017 SW_T_Android_BMI-Rechner-App 4/5 Informatikwerkstatt.aau.at

 Implementierung:

Die App besteht aus einer Klasse MainActivity, die mit dem layout_main verbunden ist.

public class MainActivity extends Activity {

private double value=0; //Variable in der BMI gespeichert wird private EditText et1;

Das Objekt et1 wird in der Methode onCreate instanziiert und ist vom Typ EditText(InputFeld).

@Override

protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

et1 = (EditText) findViewById(R.id.größe);

}

In der überschriebenen Methode onCreate werden alle Elemente, die benötigt werden, instanziiert.

Dies erfolgt mit der Methode findViewById, der man die ID des Elements übergibt(R.id.ID). Die ID muss vorher im Layout bei den Elementsettings eingestellt werden. Die onCreate Methode wird automatisch nach dem Starten der Activity aufgerufen.

TODO: Hier muss das 2te InputFeld (Gewicht) instanziert werden.

Die Methode calc wird wie vorher beschrieben beim Anklicken des Buttons aufgerufen.

public void calc(View view) {

try {

double größe = Double.parseDouble(et1.getText().toString());

TODO: Hier muss das zweite InputFeld eingelesen werden. Dies erfolgt, indem man die getText Methode von dem Objekt des Feldes aufruft und danach die Methode toString des Texts aufruft. Der String wird danach mit Double.parseDouble als Zahl vom Datentyp double interpretiert. Danach muss mit den zwei Werten und der BMI Formel der Body-Mass-Index berechnet werden. Dieser wird in der Variable Value gespeichert.

BMI Formel: BMI = (Masse in Kilogramm) : (Größe in Meter)^2;

(5)

Hinweis:

Für ^2 multipliziert man die Variable mit sich selber oder benützt die Methode Math.pow(variable,2).

Der weitere Code gibt entweder den Body-Mass-Index automatisch nach dem Anklicken in einem Alertdialog aus, oder es wird eine Fehlermeldung ausgegeben.

new AlertDialog.Builder(this)

.setTitle("BMI Rechner")

.setMessage("Dein BMI ist: " + value)

.setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialog, int which) { }

})

.setIcon(android.R.drawable.ic_dialog_info) .show();

} catch (Exception e) {

new AlertDialog.Builder(this) .setTitle("BMI Rechner")

.setMessage("Fehler bei der Eingabe")

.setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialog, int which) { }

})

.setIcon(android.R.drawable.ic_dialog_alert) .show();

Sollte die App fertig sein, kann sie an ein Handy geschickt werden. Ist ein Handy am PC angesteckt und der richtige Treiber installiert, muss einfach nur auf den grünen Play-Button geklickt werden. Danach wird die App automatisch an das Handy geschickt und gestartet.

Ist kein Handy angesteckt oder der falsche Treiber installiert, kann die App manuell auf das Handy geladen werden, indem man unter Build -> Build APK die APK (Android Package) fertigstellt. Ist dieser Vorgang abgeschlossen, befindet sich nun eine Datei mit der Dateiendung .apk im Projektordner. Diese kann dann manuell auf ein Handy kopiert und installiert werden.

Um die App testen zu können, kann ebenfalls der in Android Studio eingebaute Emulator verwendet werden.

Referenzen

ÄHNLICHE DOKUMENTE

Der Hauptnutzen des Telefons lag in der Kommunikation: Mehr als die Hälfte der Zeit nutzten die Pro- banden Messenger oder tummelten sich in sozialen Netzwerken.. Das

Ohne zu lachen, klärte er mich über meinen Irrtum auf, daß er der technische Operator der Tele- kom sei. Er klärte mich auch über meinen Irrtum mit dem

Mit dem „Unite Phone Clip+“ (Her- steller ReSound) können Träger von Hörsystemen nicht nur freihän- dig telefonieren, sondern über eine kostenfrei erhältliche iPhone-App

Finally, the six basic units (encoder, arithmetic unit, control panel, drum memory, core memory, and decoder) are combined to form a manually- operated digital

•  When you identify activities for a work breakdown structure, you can also identify the risks in your project. •  Risks are usually associated with

Der Beirat Obervieland fordert das Ortsamt Obervieland nach §32 (1) des Ortsgesetzes für Beiräte und Ortsämter auf, einen Antrag auf entsprechende (siehe Punkt

c) Guthaben in der Säule 3a, soweit diese die vom Bundesamt für Sozialversicherung ge- stützt auf Art. Januar 2006 aus dem Ausland zuziehen und noch nie einer Vorsorgeeinrichtung

Sofern Sie die Überweisung an die Aargauische Pensionskasse (APK) noch nicht veranlasst haben, können Sie dieses Formular ausfüllen und Ihrer bisherigen Vorsorge- bzw.