Activity
Activity
Modul 1 : Activity
Pendahuluan
Modul ini dibuat untuk rekan developer sekalian di Indonesia yang ingin memulai untuk
mempelajari cara membuat aplikasi mobile berbasis Android. Modul ini dibuat oleh Sidiq
Permana, Google Developer Expert, sekaligus Intel Android Software Innovator dan
pencetus Developer Mengajar. Modul ini hadir atas kerjasama Dicoding dan Intel.
Apabila anda ingin mempelajari lebih lanjut mengenai Intel dan Android, anda dapat
mengakses Intel Developer Zone.
Aplikasi yang dibuat dengan Android bisa dihasilkan dari penggunaan berbagai cara,
misalnya dengan Builder (AppInventor), HTML5+CSS3+JS (Phonegap, Intel XDK, Sencha),
Native (Eclipse, Android Studio), dan lain-lain. Salah satu tools yang disarankan oleh google
adalah menggunakan Android Studio, seperti yang digunakan pada modul ini.
Semoga modul ini dapat bermanfaat bagi rekan sekalian dan Selamat Berkarya!
Versi PDF : https://goo.gl/zYGjsa
Referensi
Pembuatan Aplikasi
Apapun platformnya konsep dasar dalam mengembangkan aplikasi adalah bagaimana
menampilkan informasi di layar, melakukan proses yang dibutuhkan dan berpindah dari satu
halaman ke halaman lain dengan atau tanpa data. Apabila kita bandingkan antara antara Web
App Dev dengan Android App Dev dengan menggunakan Android Studio, adalah sebagai
berikut.
Komponen
Web
Android
Halaman
Page
UI komponen
HTML, CSS
XML
Logic
Java
Berpindah halaman
Tag (Hyperlink)
Intent
File yang akan mengontrol semua komponen, level SDK dan permission yang ada di
aplikasi
File yang akan mengontrol semua dependency library yang digunakan oleh Aplikasi
Activity
Setiap class Java dinyatakan sebagai sebuah Activity jika class tersebut meng-extends
pada class Activity
Activity memiliki lifecycle di memory dimana para developer android harus peduli
dan tau kapan sebuah Activity diciptakan (create) hingga dimatikan (destroy) dari
memory
Setiap Activity yang dimiliki dan akan digunakan di aplikasi harus di registrasikan di
file AndroidManifest.xml
Activity menganut konsep Stack : Last in First Out (LIFO) yang mana setiap
activity yang terakhir diciptakan atau ditampilkan dilayar akan keluar pertama kali
dari stack jika Pengguna menekan tombol:
o Physical back button, atau
o Back button pada Action Bar Aplikasi
Fragments
Fragment menjadi sebuah tampilan UI dalam Android dipecah-pecah menjadi kecilkecil dan bisa mempermudah untuk digunakan ulang (reusable)
Satu Activity dalam sebuah aplikasi Android dapat menampung lebih dari 1 fragment.
Satu class Java dinyatan sebuah fragment jika class tersebut meng-extends dari class
Fragment
Practice Session #1 :
Pengembangan Aplikasi Hitung Luas untuk Implementasi Activity pada Pengembangan
Aplikasi Android
1. Buat Project dengan Start a new Android Studio Project
2. Lalu isikan Application Name dengan Hitung Luas dan Company domain dengan nama
yang kamu mau seperti berikut :
Kemudian Klik Next dan Hingga Finish. Biarkan gradle menggenerate project kita.
3. Pada activity_main.xml (folder res/layout) silakan ketikan kode seperti dibawah ini, untuk
menghasilkan layout. Anda bisa membuat layout dengan sistem drag-n-drop apabila
dikehendaki.
app\src\main\res\layout\activity_main.xml
1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
2
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
3
android:layout_height="match_parent"
4 android:paddingLeft="@dimen/activity_horizontal_margin"
5
android:paddingRight="@dimen/activity_horizontal_margin"
6
android:paddingTop="@dimen/activity_vertical_margin"
7
android:paddingBottom="@dimen/activity_vertical_margin"
8 tools:context=".MainActivity"
9
android:orientation="vertical">
10
11 <TextView android:text="Panjang" android:layout_width="wrap_content"
12
android:layout_height="wrap_content"
13
android:layout_marginBottom="8dp"/>
14 <EditText
15
android:id="@+id/edt_panjang"
16
android:layout_width="match_parent"
17
android:layout_height="wrap_content"
android:hint="0"
android:inputType="numberDecimal"
android:layout_marginBottom="5dp"/>
<TextView android:text="Lebar" android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="8dp"/>
<EditText
android:id="@+id/edt_lebar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="0"
android:inputType="numberDecimal"
android:layout_marginBottom="5dp"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/btn_hitung"
android:text="Hitung"
android:layout_marginBottom="8dp"/>
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<TextView android:text="Hasil" android:id="@+id/txt_luas"
37
android:layout_width="wrap_content"
38
android:layout_height="wrap_content"
39
android:layout_marginBottom="8dp"
40
android:textSize="18sp"
41
android:textStyle="bold"/>
42
</LinearLayout>
4. Pada MainActivity.java silakan lengkapi kode seperti dibawah ini untuk melakukan
Activity pada layout yang telah kita buat pada langkah sebelumnya.
app\src\main\java\com\nbs\app\hitungluas\MainActivity.java
1
2
3
4
5
6
7
8
9
10
11
12
package com.nbs.app.hitungluas;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
63
}
64
65
return super.onOptionsItemSelected(item);
66
}
67 }
5. Silakan Run dengan tombol Run ke emulator atau device atau export ke apk untuk instal
secara manual di device. Tampilan hasil apps adalah sebagai berikut.