Skip to main content

Membuat Toolbar Dan Menu Di Action Bar Android Studio

 Setelah sebelumnya Membuat Tombol Back , Pada tutorial ini kita akan membuat toolbar dan menu di atas layar atau biasa yang disebut action bar . Tutorial ini adalah lanjutan dari sebelumnya , maka jika ingin memahami harus mempelajari tutorial sebelumnya .


Project yang digunakan pun sama jadi kita tidak usah membuat project baru kita tinggal meneruskannya.


APA YANG DIBUTUHKAN ?

Membaca Tutorial Membuat Toolbar Back dan Membuat Navigation Drawer


struktur

HASIL AKHIR


Final

 

MEMBUAT ACTIVITY BARU


Buat Activity baru , klik kanan folder Java buat Empty Activity , beri nama Dua untuk classnya dan dua_activity untuk layoutnya :


Activity

 

BUAT LAYOUT


Buka layout dua_activity kemudian tambahkan widget toolbar , jangan lupa beri nama ID Toolbar.
android:id="@+id/toolbar_dua"

Code dua_activity.xml

 -
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_empat"
android:layout_height="match_parent"
android:layout_width="match_parent"
tools:context="com.example.alvin.blogdua.Dua">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar_dua"
android:minHeight="?attr/actionBarSize"
android:background="@color/colorPrimary"
android:layout_width="match_parent"
android:layout_height="64dp"
android:layout_alignParentTop="true"
android:layout_alignParentStart="true"
android:theme="@style/AppTheme.AppBarOverlay">
</android.support.v7.widget.Toolbar>
<TextView
android:id="@+id/textView3"
android:text="halaman DUA"
android:textColor="@android:color/holo_red_dark"
android:layout_below="@id/toolbar_dua"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true"
android:textAppearance="@style/TextAppearance.AppCompat.Large"
android:textAllCaps="true"
android:width="@android:dimen/thumbnail_width"
tools:textStyle="bold" />
</RelativeLayout>
view rawdua_activity.xml hosted with ❤ by GitHub

-

MEMBUAT MENU


Klik Kanan folder Menu – New Menu Resource beri nama menu_dua :
app:showAsAction="never" = TANPA ICON
app:showAsAction="ifRoom" = ADA ICON

android:orderInCategory="100" = UKURAN DAN BERURUT DARI KANAN


menu



menu2


Code menu_dua.xml 


<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item android:id="@+id/action_file"
android:title="Setting"
android:icon="@drawable/ic_menu_manage"
android:orderInCategory="100"
app:showAsAction="never" />
<item android:id="@+id/action_camera"
android:title="Refresh"
android:icon="@android:drawable/sym_call_missed"
android:orderInCategory="200"
app:showAsAction="ifRoom" />
<item android:id="@+id/action_save"
android:title="Open"
android:icon="@drawable/ic_menu_gallery"
android:orderInCategory="300"
app:showAsAction="ifRoom" />
</menu>
view rawmenu_dua.xml hosted with ❤ by GitHub



Isi Code Dua.java

Isi Dua.java dengan kode berikut :

Code Dua.java


-
package com.example.alvin.blogdua;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Toast;
public class Dua extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_dua);
//menerapkan tool bar sesuai id toolbar | ToolBarAtas adalah variabel buatan sndiri
Toolbar ToolBarAtas = (Toolbar)findViewById(R.id.toolbar_dua);
setSupportActionBar(ToolBarAtas);
ToolBarAtas.setLogo(R.mipmap.ic_launcher);
ToolBarAtas.setLogoDescription(getResources().getString(R.string.app_name));
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Menerapkan menu terpilih di menu-> empat.xml
getMenuInflater().inflate(R.menu.menu_dua, 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_file) {
Toast.makeText(Dua.this, "Ini menu Setting", Toast.LENGTH_LONG).show();
return true;
}
else if(id == R.id.action_camera) {
Toast.makeText(Dua.this, "Take Picture", Toast.LENGTH_LONG).show();
}
else if(id == R.id.action_save){
Toast.makeText(Dua.this, "Save Data", Toast.LENGTH_LONG).show();
}
return super.onOptionsItemSelected(item);
}
}
view rawDua.java hosted with ❤ by GitHub

-

MEMBUAT LINK DI MENU DRAWER


Langkah selanjutnya adalah membuat link di menu drawer agar memunculkan activity dua , buka file utama.java sesuaikan kode berikut :

Utama.java

Code Utama.java


-
package com.example.alvin.blogdua;
import android.content.Intent;
import android.os.Bundle;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.view.View;
import android.support.design.widget.NavigationView;
import android.support.v4.view.GravityCompat;
import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.ActionBarDrawerToggle;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;
public class Utama extends AppCompatActivity
implements NavigationView.OnNavigationItemSelectedListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_utama);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
FloatingActionButton fab = (FloatingActionButton) 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 = (DrawerLayout) findViewById(R.id.drawer_layout);
ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
drawer.setDrawerListener(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.utama, 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(Utama.this,Satu.class);
startActivity(intentku);
} else if (id == R.id.nav_gallery) {
Intent intentku= new Intent(Utama.this,Dua.class);
startActivity(intentku);
} else if (id == R.id.nav_slideshow) {
} 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;
}
}
view rawUtama.java hosted with ❤ by GitHub

-

EDIT FILE MANIFEST


kode snippet

Tambahkan kode berikut :

Code AndroidManifest.xml


 -
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.alvin.blogdua">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity
android:name=".Utama"
android:label="@string/app_name"
android:theme="@style/AppTheme.NoActionBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!-- membuat tombol back DI HALAMAN satu -->
<activity
android:name=".Satu"
android:label="halaman SATU"
android:parentActivityName=".Utama">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value=".Utama" />
</activity>
<!-- END membuat tombol back -->
<!-- membuat tombol back DI HALAMAN dua -->
<activity
android:name=".Dua"
android:label="halaman Dua"
android:parentActivityName=".Utama">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value=".Utama" />
</activity>
<!-- END membuat tombol back -->
</application>
</manifest>
view rawAndroidManifest.xml hosted with ❤ by GitHub
-


 HASILNYA


1

 
2

Comments

Popular posts from this blog

Pakai Spion Model Jalu atau Bar End Apa Aman dari Tilang , Ini Kata Polisi

  Pakai Spion Model Jalu atau Bar End Apa Aman dari Tilang , Ini Kata Polisi Pemutar video dari: YouTube ( Kebijakan Privasi ,  Persyaratan ) Spion menjadi komponen wajib yang harus terpasang di kendaraan, baik sepeda motor maupun mobil. Boleh ga sih dalam aturan? GridOto.com  - Spion menjadi komponen wajib yang harus terpasang di kendaraan, baik sepeda motor maupun mobil. Pemilik kendaraan yang tidak memiliki kaca spion akan kena tilang dari kepolisian. Aturan itu sudah tertera dalam UU No 22 tahun 20019 tentang Lalu Lintas dan Angkutan Jalan. Namun, tilang juga diberlakukan bagi pengendara yang memodifikasi atau memasang spion variasi seperti bar end (spion jalu). Lalu seperti apa kaca spion yang dapat dikenakan tilang? Apakah spion bukan orisinal atau bukan bawaan pabrik dikenakan tilang? Kasatlantas Jakarta Pusat Kompol Lilik mengatakan, standarisasi penggunaan spion itu mengenai ukuran dan fungsinya. Poin utama, spion dapat melihat ke belakang dan samping. ...

Vaksinasi Jalur Umum Dibuka Awal Juli, Begini Cara Mendaftarnya

  TEMPO.CO, Jakarta  - Kementerian Kesehatan telah mengeluarkan surat edaran yang menyatakan bahwa seseorang dapat divaksinasi tanpa memandang domisili maupun tempat tinggal di KTP.  Juru Bicara Kementerian Kesehatan,  Siti Nadia Tarmizi, mengatakan  vaksinasi  Covid-19 untuk masyarakat umum usia 18 tahun ke atas akan dibuka awal Juli mendatang. Vaksinasi ini dikabarkan akan dilakukan di seluruh Unit Pelaksanaan Teknis (UPT) Vertikal Kemenkes, seperti rumah sakit, puskesmas, dan kantor kesehatan pelabuhan.  Pemerintah  kini menargetkan agar vaksin dapat diterima rata-rata satu juta per hari. Untuk dapat mencapai angka ini, Kementerian Kesehatan melalui Dirjen Pencegahan dan Pengendalian Penyakit mendirikan pos pelayanan vaksinasi yang dapat memberikan pelayanan kepada semua target sasaran tanpa memandang domisili atau tempat tinggal KTP. Hal ini tercantum dalam Surat Edaran nomor HK.02.02/I/1669/2021. Lalu bagaimana prosedur dan cara pendaftaran v...