Dalam bab ini Anda akan membuat dan membangun aplikasi bernama TwoActivities yang, ternyata, berisi dua aktivitas. Aplikasi ini akan dibangun dalam tiga tahap. Pada tahap pertama, buat aplikasi yang aktivitas utamanya hanya berisi satu tombol (Send). Saat pengguna mengeklik tombol ini, aktivitas utama menggunakan intent untuk memulai aktivitas kedua.



MainActivity -> Second Activity
Dalam tahap kedua, Anda akan menambahkan tampilan EditText ke aktivitas utama. Pengguna memasukkan pesan dan
mengeklik Send. Aktivitas utama menggunakan intent untuk memulai aktivitas kedua dan untuk mengirimkan pesan
pengguna ke aktivitas tersebut. Aktivitas kedua menampilkan pesan yang diterimanya.
Pada tahap terakhir aplikasi TwoActivities, tambahkan tampilan EditText dan tombol Reply ke aktivitas kedua. Sekarang
pengguna bisa mengetik pesan balasan dan mengeklik Reply, dan balasannya ditampilkan di aktivitas utama. Pada titik ini,
gunakan intent di sini untuk meneruskan pesan balasan kembali dari aktivitas kedua ke aktivitas utama.
Tugas. Membuat proyek TwoActivities
Dalam tugas ini Anda akan menyiapkan proyek awal dengan aktivitas utama, mendefinisikan layout, dan mendefinisikan
metode kerangka untuk peristiwa tombol onClick .
1. Mulai Android Studio dan buat proyek Android Studio baru. Panggil aplikasi "TwoActivities" dan ubah domain perusahaan ke "android.example.com." Pilih SDK Minimum yang Anda gunakan di proyek sebelumnya.
2. Pilih Empty Activity untuk template proyek. Klik Next.
3. Terima nama aktivitas default (MainActivity). Pastikan kotak Generate Layout file dicentang. Klik Finish.
2 Definisikan layout untuk aktivitas utama
1. Buka res/layout/activity_main.xml . Pada Layout Editor, klik tab Design di bagian bawah layar.
2. Hapus TextView yang berbunyi "Hello World."
3. Tambahkan Tombol ke layout dalam posisi apa pun.
4. Beralih ke XML Editor (klik tab Text) dan modifikasi atribut ini di dalam Tombol:

Ini mungkin membuat kesalahan "Method launchSecondActivity is missing in MainActivity." Abaikan kesalahan ini sekarang. Masalah ini akan diatasi pada tugas berikutnya.
5. Letakkan kursor pada kata "Send" .
6. Tekan Alt-Enter (Option-Enter di Mac), dan pilih Extract string resources.
7. Setel nama Sumber Daya ke button_main dan klik OK. Proses ini membuat sumber daya string dalam file values/res/string.xml, dan string dalam kode Anda digantikan dengan referensi ke sumber daya string tersebut.
8. Pilih Code > Reformat Code untuk memformat kode XML, jika perlu.
9. Pratinjau layout aktivitas utama menggunakan Layout Editor. Layout harus terlihat seperti ini:
kode solusi :
3. Membuat aktivitas kedua
1. Klik folder app untuk proyek Anda dan pilih File > New > Activity > Empty Activity.
2. Namakan aktivitas baru "SecondActivity." Pastikan Generate Layout File dicentang, dan nama layout akan diisi dengan activity_second.
3. Klik Finish. Android Studio menambahkan layout aktivitas baru (activity_second) dan file Java baru (SecondActivity) ke proyek Anda untuk aktivitas baru tersebut. Ini juga akan memperbarui manifes Android untuk menyertakan aktivitas baru.
kode solusi:
Memodifikasi manifes Android
1. Buka manifests/AndroidManifest.xml .
2. Temukan elemen <activity> yang dibuat Android Studio untuk aktivitas kedua.
<activity android:name=".SecondActivity"></activity>
3. Tambahkan atribut ini ke elemen <activity>:

Atribut label menambahkan judul aktivitas ke bilah tindakan. Atribut parentActivityName menandakan bahwa aktivitas utama adalah induk aktivitas kedua. Hubungan aktivitas induk ini digunakan untuk navigasi "ke atas" di dalam aplikasi Anda. Dengan mendefinisikan atribut ini, bilah tindakan untuk aktivitas kedua akan muncul dengan panah yang menghadap ke kiri untuk memungkinkan pengguna untuk bergerak "ke atas" ke aktivitas utama.
4. Tempatkan kursor di "Second Activity" dan tekan Alt-Enter (Option-Enter di Mac).
5. Pilih Extract string resource, namakan sumber daya "activity2_name", dan klik OK. Android Studio menambahkan sumber daya string untuk label aktivitas.
6. Tambahkan elemen

Menambahkan string ke ekstra intent aktivitas utama Objek intent dapat meneruskan data ke aktivitas target dalam dua cara: dalam bidang data, atau dalam ekstra intent. Data intent adalah URI yang menandakan data spesifik untuk dikerjakan. Jika informasi yang ingin diteruksan ke aktivitas melalui intent bukan URI, atau jika Anda memiliki lebih dari satu informasi yang ingin dikirimkan, Anda bisa meletakkan informasi tambahan tersebut ke dalam ekstra intent.
Ekstra intent adalah pasangan kunci/nilai dalam Bundel. Bundel adalah kumpulan data, yang disimpan sebagai pasangan kunci/nilai. Untuk meneruskan informasi dari satu aktivitas ke yang lainnya, letakkan kunci dan nilai ke dalam bundel ekstra intent dari aktivitas mengirim, dan keluarkan lagi ke aktivitas menerima.
1. Buka java/com.example.android.twoactivities/MainActivity .
2. Tambahkan konstanta publik di bagian atas kelas untuk mendefinisikan kunci untuk ekstra intent: public static final String EXTRA_MESSAGE = "com.example.android.twoactivities.extra.MESSAGE";
3. Tambahkan variabel privat di bagian atas kelas untuk menampung objek EditText. Mengimpor kelas EditText. private EditText mMessageEditText;
4. Dalam metode onCreate(), gunakan findViewByID untuk mendapatkan referensi tentang contoh EditText dan menetapkannya ke variabel privat tersebut: mMessageEditText = (EditText) findViewById(R.id.editText_main);
5. Dalam metode launchSecondActivity(), di bawah intent baru, dapatkan teks dari EditText sebagai string: String message = mMessageEditText.getText().toString();
6. Tambahkan string tersebut ke intent sebagai sebuah ekstra dengan konstanta EXTRA_MESSAGE sebagai kunci dan string-nya sebagai nilai: intent.putExtra(EXTRA_MESSAGE, message);
kode solusi:
Memodifikasi aktivitas kedua untuk mendapatkan ekstra dan menampilkan pesan
1. Buka java/com.example.android.twoactivities/SecondActivity .
2. Dalam metode onCreate() , dapatkan intent yang mengaktifkan aktivitas ini: Intent intent = getIntent();
3. Dapatkan string berisi pesan dari ekstra intent menggunakan variabel statis MainActivity.EXTRA_MESSAGE sebagai kuncinya: String message = intent.getStringExtra(MainActivity.EXTRA_MESSAGE);
4. Gunakan findViewByID untuk mendapatkan referensi ke TextView untuk pesan dari layout (Anda mungkin perlu mengimpor kelas TextView): TextView textView = (TextView) findViewById(R.id.text_message);
5. Setel teks TextView tersebut ke string dari ekstra intent: textView.setText(message);
6. Jalankan aplikasi. Saat Anda mengetik pesan dalam aktivitas utama dan mengeklik Send, aktivitas kedua terbuka dan menampilkan pesan tersebut.
kode solusi:
Jalankan Aplikasinya




Tidak ada komentar:
Posting Komentar