ADDING MATERIAL TOOLBAR TO ANDROID 2.1 - 2.3

Sejak Toolbar diperkenalkan pada Android 5.0 Lollipop (API Level 21), kedudukan ActionBar menjadi tergantikan sejak diperkenalkan pertama kali pada Android 3.0 HoneyComb (API Level 11).
TOOLBAR VS ACTIONBAR
Toolbar mempunyai kelebihan dibandingkan ActionBar, beberapa diantaranya adalah fleksibilitas dan kontrol yang lebih mudah, menganimasikannya, Action View, Scroll View, menambahkan logo perusahaan di dalamnya dan lain-lain.
Lalu apakah ActionBar berarti @deprecated?
Saya belum dapat memastikannya, tapi jika aplikasi Anda menggunakan third party library seperti ActionBarSherlock (lihat official website http://jakewharton.com/deprecated-from-inception/ dan repositorynya di github https://github.com/JakeWharton/ActionBarSherlock ) , maka itu tidak dapat dipakai lagi pada Android 5.0 Lollipop (API Level 21). Artinya Anda harus beralih menggunakan Toolbar atau ActionBar jika ingin menargetkan aplikasi Anda untuk pengguna Lollipop.
APPCOMPAT-V7
AppCompat-v7 adalah android support library yg dibuat oleh Google untuk membawa material design pada platform pra Lollipop (baca: Pre Lollipop Device). Jika Anda masih ingin mengembangkan aplikasi untuk Android 2.x, maka Anda dapat menggunakan android-support-v7-appcompat ini dengan mengubah Manifest file Anda menjadi "minSdkVersion="7" dan targetSdkVersion="21", sedangkan di "project.properties" Anda, harus menggunakan "target=android-21"
Jangan lupa, untuk mengkompilasi aplikasi Anda dengan menggunakan SDK android-21. Di AIDE, Anda dapat memperbarui android.jar Anda ke android-21 yang bisa Anda download disini https://docs.google.com/uc…(66M).
Langkah-demi-langkah:
1. Buatlah direktori baru di root sdcard dengan nama "android-sdk/platforms/android-21/" dan pindahkan semua yang ada di dalam berkas "android-21.zip" seperti; android.jar, framework.aidl, annotations.jar dan uiautomator.jar ke direktori yang baru dibuat.
2. Buka AIDE dan masuk Ke Settings > Build & Run > Lihat ke SDK - Android.jar File dengan tulisan "specify the android.jar file to compile against" > masukan /mnt/sdcard/android-sdk/android-21/android.jar
3. Kini AIDE Anda telah siap untuk mengkompilasi project dengan target API level 21!
CARA MENAMBAHKAN TOOLBAR DI APLIKASI ANDA UNTUK PRE LOLLIPOP DEVICE
1. Download android-support library revisi 22.2.0 di https://dl-ssl.google.com/andr…/repository/support_r22.2.zip
2. Pindahkan android/support/v7/appcompat yang berada di folder "v7" ke Project Directory Anda (AppProjects)
3. Buat sebuah project baru di AIDE
4. Browser ke direktori "appcompat", tekan lama dan pilih "add library to project"
5. Pindahkan semua resource yang ada di direktori res/ appcompat ke project Anda, serta copy & paste semua file jar yang ada di folder libs appcompat ke project Anda.
6. Di MainActivity.java Anda tambahkan
toolbar = (Toolbar) findViewById(R.id.tool_bar); // setelah setContentView();
Ganti extends Activity menjadi extends AppCompatActivity, dan jangan lupa untuk menambahkan setSupportActionBar(); // Untuk mengatur toolbar sebagai actionbar dengan memanggil setSupportActionBar();
Jika Anda ingin menambahkan menu, tinggal panggil saja fungsi onCreateOptionsMenu(); dan onOptionsItemSelected(); dengan Overriding.
7. Buat sebuah file baru dengan nama app_styles.xml untuk aplikasi Anda
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="AppBaseTheme" parent="Theme.AppCompat.Light.NoActionBar" />
<style name="AppTheme" parent="AppBaseTheme">
<item name="colorPrimary">@color/ColorPrimary</item>
<item name="colorPrimaryDark">@color/ColorPrimaryDark</item>
<!-- Customize your theme here. -->
</style>
</resources>
Note: Sejak kita menggunakan Toolbar untuk aplikasi kita, kita harus menggunakan style "Theme.AppCompat.Light.NoActionBar" untuk memberitahu bahwa Toolbar kita bukanlah ActionBar.
8. Buatlah file baru lagi dengan nama app_colors.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="ColorPrimary">‪#‎FF5722‬</color>
<color name="ColorPrimaryDark">‪#‎E64A19‬</color>
</resources>
Note: Anda bisa mengubah warna palette sesuai keinginan Anda. Sebagai referensi, Anda dapat melihat Google Material Design Palette dihttp://www.google.com/design/spec/style/color.html atau Material Design Palette Generator di http://www.materialpalette.com/
9. app_strings.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">AppCompat Toolbar Example</string>
<string name="hello_world">Hello World! MainActivity</string>
</resources>
10. Buat sebuah file dengan nama toolbar.xml di folder res/layout
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/ColorPrimary"
android:elevation="4dp"
android:theme="@style/ThemeOverlay.AppCompat.Dark">
</android.support.v7.widget.Toolbar>
11. Dan layout_main.xml
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<include
android:id="@+id/tool_bar"
layout="@layout/toolbar">
</include>
<TextView
android:layout_below="@+id/tool_bar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:text="@string/hello_world" />
</RelativeLayout>
12. Akhirnya kita dapat menambahkan ini di AndroidManifest.xml Anda
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:label="@string/app_name"
android:name=".MainActivity"
android:theme="@style/Theme.AppCompat.Light" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
Note: Anda harus menggunakan "android:theme="@style/AppTheme" untuk aplikasi Anda dan "android:theme="@style/Theme.AppCompat.Light" untuk Activity nya.
Dengan menggunakan tutorial ini, Anda dapat menambahkan Material Design Toolbar pada Pre Lollipop device dari Api Level 7 - keatas dengan menggunakan AIDE, dan ini adalah pengalaman saya yang dengan senang hati saya bagikan kepada Anda