● Interaksi Pengguna
● Fokus
● Membuat Pilihan
● Mengenali isyarat
1. Interaksi pengguna
Pengguna mengharapkan untuk berinteraksi dengan aplikasi
● Mengeklik, menekan, berbicara, mengetik, dan mendengarkan
● Menggunakan kontrol input pengguna seperti tombol, menu, keyboard, kotak teks, dan
mikrofon
● Melakukan navigasi antar aktivitas
2. Control input
Cara mendapatkan input dari pengguna
● Bentuk bebas
○ Input teks dan suara
● Aksi
○ Tombol
○ Menu kontekstual
○ Isyarat
○ Dialog
● Pilihan terbatas
○ Picker
○ Kotak centang
○ Tombol radio
○ Tombol toggle
○ Spinner
Contoh kontrol input pengguna
1. Button
2. Bidang teks
3. Bilah telusur
4. Kotak centang
5. Tombol radio
6. Toggle
7. Spinner
● Kelas View adalah blok pembangun dasar untuk semua komponen UI, termasuk kontrol input
● Tampilan adalah kelas dasar untuk kelas-kelas yang menyediakan komponen UI interaktif
Kontrol input seperti keyboard mengirim input ke tampilan yang memiliki fokus
Memandu pengguna
● Menunjukkan tampilan mana yang memiliki fokus secara visual sehingga pengguna tahu ke
mana input mereka berjalan
● Menunjukkan tampilan mana yang memiliki fokus akan membantu pengguna menavigasi
melalui aliran
Memandu fokus
● Mengatur kontrol masukan dalam layout dari kiri ke kanan dan atas ke bawah dalam urutan
penetapan fokus yang Anda inginkan
android:focusable="true"
android:nextFocusDown="@+id/bottom"
● Activity.getCurrentFocus()
● ViewGroup.getFocusedChild()
Input text
EditText
● Kelas EditText
● Pemeriksa ejaan
● Bisa disesuaikan
Tombol "Action"
Mendapatkan teks
EditText simpleEditText =
(EditText) findViewById(R.id.edit_simple);
● textAutoCorrect—Mengaktifkan autocorrect
● android:inputType="phone"
● android:inputType="textAutoCorrect|textCapSentences"
Tombol
● Biasanya teks atau visual akan menunjukkan apa yang akan terjadi ketika ditekan
<Button
android:id="@+id/button_send"
android:layout_width="wrap_content" android:onClick
android:layout_height="wrap_content"
button.setOnClickListener(new View.OnClickListener() {
});
Misalnya:
Menggunakan FAB
compile 'com.android.support:design:a.b.c'
● Layout
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab"
android:layout_gravity="bottom|end"
android:layout_margin="@dimen/fab_margin"
android:src="@drawable/ic_fab_chat_button_white"
.../>
1. Klik-kanan app/res/drawable
Eksperimen
1. Pilih New > Vector Asset
Membuat Pilihan
● Kotak centang
● Tombol radio
● Toggle
● Spinner
Kotak centang
Tombol radio
Tombol toggle
Switch
Spinner
Mengimplementasikan spinner
<Spinner
android:id="@+id/label_spinner"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</Spinner>
<string-array name="labels_array">
<item>Home</item>
<item>Work</item>
<item>Mobile</item>
<item>Other</item>
</string-array>
// In onCreate()
if (spinner != null) {
spinner.setOnItemSelectedListener(this);
Adaptor bagaikan jembatan, atau perantara, antara dua antarmuka yang tidak kompatibel
Misalnya, pembaca kartu memori bertindak sebagai adaptor antara kartu memori dan laptop
layout
Membuat adaptor
ArrayAdapter<CharSequence> adapter =
ArrayAdapter.createFromResource(
this, R.array.labels_array,
// Layout for each item
android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(
android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
Mengimplementasikan onItemSelectedListener
String spinner_item =
adapterView.getItemAtPosition(pos).toString();
// Do something
Dialog
TimePickerDialog DatePickerDialog
AlertDialog
AlertDialog bisa
menampilkan:
1. Judul (opsional)
2. Area materi
3. Tombol aksi
Membuat AlertDialog
Gunakan AlertDialog.Builder untuk membuat dialog peringatan standar dan mengatur atribut:
AlertDialog.Builder(MainActivity.this);
alertDialog.setTitle("Connect to Provider");
alertDialog.setMessage(R.string.alert_message);
...
● alertDialog.setPositiveButton()
● alertDialog.setNeutralButton()
● alertDialog.setNegativeButton()
alertDialog.setPositiveButton(
"OK", newDialogInterface.OnClickListener() {
});
● DatePickerDialog
● TimePickerDialog
Pengantar fragmen
Isyarat umum
Isyarat sentuh
● gulir
● cubit
Mendeteksi isyarat
Kelas dan metode yang tersedia untuk membantu Anda menangani isyarat.
Baca selengkapnya tentang bagaimana menangani isyarat dalam Dokumentasi pengembang Android