Anda di halaman 1dari 6

39

Modul

5
Menu
Tujuan
Praktikan diharapkan dapat menggunakan Android Studio untuk membuat program sederhana pada
smartphone/ emulator. Di akhir praktikum ini, praktikan diharapkan dapat:

● Mahasiswa mampu memahami penggunaan Menu

● Mahasiswa mampu menerapkan Navigation Drawer pada Menu

Persiapan

1. Buku ajar (jika ada)/diktat kuliah/materi dari sumber lain


2. Alat tulis
3. Kertas Buram
4. Lembar jawaban
5. Lembar penilaian (disiapkan oleh asisten)
6. Komputer yang sudah di-install Android Studio & Emulator didalamnya
7. Android Smartphone (Jika tidak menginstall emulator)

Materi Pokok
Praktikum ini mengasumsikan bahwa praktikan telah mempelajari materi tentang Menu
pada android. Agar praktikan dapat mencapai tujuan dalam pertemuan praktikum kelima ini, maka
praktikan harus aktif bertanya dan mencoba mempraktekkan tugas-tugas yang ada dalam praktikum
kelima ini.
40

Proses
Pada bab ini praktikan harus mempelajari bagaimana sebuah Menu digunakan dan bagaimana cara
implementasinya dengan mengerjakan contoh kasus yang mana sangat berhubungan dengan
penggunaan Menu pada aplikasi Android dalam satu project, untuk kasus ini kerjakan dalam waktu
20 menit. Berikan keterangan Anda berupa deskripsi singkat tentang contoh kasus tersebut diatas.
Berikutnya diskusikan kasus Anda dengan teman Anda, kemudian mintalah logika dan saran untuk
menyelesaikan kasus Anda tersebut dengan bahasa program Java. Berdiskusi dan melakukan coding
dilakukan dalam waktu 20 menit. Setelah itu selesaikan contoh kasus pada bagian aktifitas dalam
waktu 20 menit secara mandiri. Lanjutkan praktikum Anda dengan menyelesaikan soal pada bagian
latihan dengan batasan waktu selama 20 menit. Bagian terakhir adalah tugas, yaitu project yang harus
dikerjakan dirumah dan wajib dikumpulkan pada pertemuan berikutnya.

Aktivitas
1. Mahasiswa membaca buku ajar (jika ada)/ diktat kuliah/materi dari sumber lain tentang Menu
(Navigation Drawer) sebagai materi bab kelima. Temukan bagian penting dalam topik Menu
(Navigation Drawer) ini, kemudian tulis sebagai ringkasan hasil belajar.
2. Mahasiswa berdiskusi tentang bagaimana cara membuat dan menggunakan Menu (Navigation
Drawer) didalam sebuah projek android studio. Sebagai bahan diskusi, ikutilah langkah-langkah
di bawah ini:
● Buat projek baru pada Android Studio
● Saat memilih template, jangan pilih empty activity, tetapi pilihlah Navigation Drawer
● Klik finish, dan semua layout dan class .java akan dibentuk secara otomatis.
● Siapkan juga 1 empty activity dan beri nama “Satu”.
● Setelah selesai menyiapkan semuanya, buka class MainActivity.java dan sesuaikan kodenya
menjadi seperti berikut

MainActivity.java

import android.content.Intent;
import android.os.Bundle;
import android.view.MenuItem;
import android.view.View;
import android.view.Menu;

import com.google.android.material.floatingactionbutton.FloatingActionButton;
import com.google.android.material.snackbar.Snackbar;
import com.google.android.material.navigation.NavigationView;

import androidx.appcompat.app.ActionBarDrawerToggle;
import androidx.core.view.GravityCompat;
import androidx.navigation.NavController;
import androidx.navigation.Navigation;
import androidx.navigation.ui.AppBarConfiguration;
import androidx.navigation.ui.NavigationUI;
import androidx.drawerlayout.widget.DrawerLayout;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.Toolbar;

public class MainActivity extends AppCompatActivity


implements NavigationView.OnNavigationItemSelectedListener {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
41

setContentView(R.layout.activity_main);
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
FloatingActionButton fab = findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Snackbar.make(view, "Replace with your own action",
Snackbar.LENGTH_LONG)
.setAction("Action", null).show();
}
});
DrawerLayout drawer = findViewById(R.id.drawer_layout);
ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
this, drawer, toolbar,
R.string.navigation_drawer_open,
R.string.navigation_drawer_close);
drawer.addDrawerListener(toggle);
toggle.syncState();
NavigationView navigationView =
(NavigationView) findViewById(R.id.nav_view);
navigationView.setNavigationItemSelectedListener(this);
}

@Override
public void onBackPressed() {
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
if (drawer.isDrawerOpen(GravityCompat.START)) {
drawer.closeDrawer(GravityCompat.START);
} else {
super.onBackPressed();
}
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}

@SuppressWarnings("StatementWithEmptyBody")
@Override
public boolean onNavigationItemSelected(MenuItem item) {
// Handle navigation view item clicks here.
int id = item.getItemId();
if (id == R.id.nav_camera) {
Intent intentku = new Intent(MainActivity
.this,Satu.class);
startActivity(intentku);
} else if (id == R.id.nav_gallery) {
} else if (id == R.id.nav_slideshow) {
42

} else if (id == R.id.nav_manage) {


} else if (id == R.id.nav_share) {
} else if (id == R.id.nav_send) {
}
DrawerLayout drawer = (DrawerLayout)
findViewById(R.id.drawer_layout);
drawer.closeDrawer(GravityCompat.START);
return true;
}
}

● Selanjutnya, buka layout activity_satu.xml dan seusaikan kodenya

activity_satu.xml

<?xml version="1.0" encoding="utf-8"?>


<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="15dip"
android:text="INI LAYOUT FOTO"
android:textSize="18dip" />
</LinearLayout>

● Lalu buka class Satu.java dan sesuaikan kodenya juga

Satu.java
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;

public class Satu extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_satu);
}
}

● Untuk mengganti nama dan icon menu navigation drawer, edit pada activity_main_drawer
yang terdapat pada folder res/menu/ sebagai berikut

activity_main_drawer.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:showIn="navigation_view">
<group android:checkableBehavior="single">
<item
android:id="@+id/nav_camera"
android:icon="@drawable/ic_menu_camera"
android:title="Import" />
<item
43

android:id="@+id/nav_gallery"
android:icon="@drawable/ic_menu_gallery"
android:title="Gallery" />
<item
android:id="@+id/nav_slideshow"
android:icon="@drawable/ic_menu_slideshow"
android:title="Slideshow" />
<item
android:id="@+id/nav_manage"
android:icon="@drawable/ic_menu_manage"
android:title="Tools" />
</group>
<item android:title="Communicate">
<menu>
<item
android:id="@+id/nav_share"
android:icon="@drawable/ic_menu_share"
android:title="Share" />
<item
android:id="@+id/nav_send"
android:icon="@drawable/ic_menu_send"
android:title="Send" />
</menu>
</item>
</menu>

● Jalankan projek dan hasilnya akan seperti berikut


44

Latihan
Lengkapi dan kembangkan aplikasi yang sudah dibuat pada aktivitas dengan menambahkan intent
di setiap menu yang nanti akan mengarahkan user ke layout baru sesuai dengan menu yang dipilih!

Penutup
Tugas
Buatlah sebuah tampilan menu yang menerapkannavigation drawer. Pada tiap menu yang di klik
harus mengarah ke intent baru (seperti pada contoh modul)

Contoh Pilihan menu (pilih salah satu)

1. Menu Aplikasi data mahasiswa


2. Menu Info Kuliner
3. Menu Info Wisata
4. Menu Info Game
5. Menu Info Katalog produk
6. Menu Info Olahraga
7. Menu Info Transportasi
8. Menu Info Entertainment.

Anda mungkin juga menyukai