Mengenal Intent untuk Berpindah Halaman atau Activity pada Android - Jika pada web kita menggunakan tag anchor <a></a> atau hyperlink untuk berpindah halaman / page. Maka, kita menggunakan Class Intent untuk berpindah halaman di Android. Apa itu intent?. Intent pada android merupakan sebuah class yang digunakan untuk berpindah activity atau halaman.
Sedangkan activity sendiri merupakan suatu halaman yang dapat dilihat pengguna untuk berinteraksi dengan aplikasi.
Baca Juga Lifecycle Activity pada Android.
Selain untuk berpindah activity, intent juga dapat digunakan untuk berkomunikasi dengan fungsi – fungsi internal pada android seperti Kamera, Mengakses Web , Gallery, Dial Number dan lain-lain.
Maka dari itu, berdasarkan sumber activity yang diakses , intent dibagi menjadi 2 jenis yaitu Implicit Intent dan Explicit Intent.
Pada artikel kali ini, kita akan mempelajari Pengertian dan Contoh Aplikasi dari Implicit Intent dan Explicit Intent.
Jadi, simak baik-baik ya supaya dalam artikel Belajar Android selanjutnya tidak kebingungan hehe.
Implicit Intent
Implicit Intent merupakan jenis intent yang dipanggil untuk memanggil Activity yang sudah ada di fungsi internal android. Contoh dari Implicit intent ini yaitu fungsi membuka gallery, dial telephone, kamera, file manager dan lain-lain.
Explicit Intent
Explicit Intent adalah jenis intent yang dipanggil untuk memanggil Activity lain yang ada pada project yang sama. Contohnya memanggil Activity SecondaryActivity.java dari MainActivity.java.
Contoh Aplikasi
Buka Android studio kalian kemudian buatlah projek baru dengan nama Belajar Intent.
activity_main.xml
Buka file xml dari mainactivity kemudian isi dengan kode sebagai berikut :
<?xml version="1.0" encoding="utf-8"?><LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context=".MainActivity"android:layout_margin="20dp"android:orientation="vertical"android:gravity="center"><LinearLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="vertical"android:gravity="center"><TextViewandroid:layout_width="250dp"android:layout_height="wrap_content"android:text="Explicit Intent"android:textAlignment="center"android:textStyle="bold"android:textColor="#000"android:textSize="20sp"/><Buttonandroid:id="@+id/btn_secondActivity"android:layout_marginTop="5dp"android:layout_width="250dp"android:layout_height="50dp"android:text="Pindah ke Second Activity"android:background="#a9cce3 "/></LinearLayout><LinearLayoutandroid:layout_marginTop="50dp"android:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="vertical"android:gravity="center"><TextViewandroid:layout_width="250dp"android:layout_height="wrap_content"android:text="Implicit Intent"android:textAlignment="center"android:textStyle="bold"android:textColor="#000"android:textSize="20sp"/><Buttonandroid:id="@+id/btn_dialNumber"android:layout_marginTop="5dp"android:layout_width="250dp"android:layout_height="50dp"android:text="Buka Dial Number"android:background=" #52be80 "/><Buttonandroid:id="@+id/btn_web"android:layout_marginTop="10dp"android:layout_width="250dp"android:layout_height="50dp"android:text="Buka Web"android:background=" #f4d03f "/></LinearLayout></LinearLayout>
Setelah membuat layoutnya, kita lanjut ke javanya.
MainActivity.java
Buka file MainActivity.java kemudian isi dengan kode sebagai berikut :
package com.example.pkl.belajarintent; //sesuaikanimport android.content.Intent;import android.net.Uri;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.Button;public class MainActivity extends AppCompatActivity {Button btn_secondActivity,btn_dialNumber,btn_web;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);btn_secondActivity = (Button) findViewById(R.id.btn_secondActivity);btn_dialNumber = (Button) findViewById(R.id.btn_dialNumber);btn_web = (Button) findViewById(R.id.btn_web);sbtn_secondActivity.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {Intent i = new Intent(MainActivity.this,SecondActivity.class); //Mendefinisikan Tujuan dari Intent.startActivity(i); //Meng-Execute Intent}});btn_dialNumber.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {Intent intent = new Intent(Intent.ACTION_DIAL);intent.setData(Uri.parse("0812345678"));startActivity(intent);}});btn_web.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {Intent intent = new Intent(Intent.ACTION_VIEW);intent.setData(Uri.parse("https://kompikaleng.com"));startActivity(intent);}});}}
Setelah itu kita perlu membuat activity baru untuk menguji explicit intentnya.
Buat Activity baru dengan memilih File -> New -> Activity -> Empty Activity.
Kemudian beri nama SecondActivity
Sudah membuat activity baru? lanjut kita isi activity_second.xml untuk mengubah sedikit layoutnya.
activity_second.xml
Buka file tersebut kemudian isi dengan kode sebagai berikut :
<?xml version="1.0" encoding="utf-8"?><android.support.constraint.ConstraintLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context=".SecondActivity"android:background=" #d5dbdb "><TextViewandroid:gravity="center"android:layout_width="match_parent"android:layout_height="match_parent"android:textColor="#000"android:textSize="20sp"android:text="Anda berhasil membuka Second Activity"/></android.support.constraint.ConstraintLayout>
Kesimpulan
Berdasarkan sumber activity yang diakses, Intent dibagi menjadi 2 antara lain Explicit Intent dan Implicit Intent. Explicit Intent adalah jenis intent yang dipanggil ketika mengakses activity lain pada projek yang sama, sedangkan Implicit Intent adalah jenis intent yang dipanggil ketika mengakses activity dari fungsi internal android (Dial number, kamera, Gallery dan lain-lain)
Segitu dulu deh, kalau kalian merasa artikel ini bermanfaat jangan lupa tinggalkan komentar ya 🙂 Terima Kasih.
Share This :
comment 0 komentar
more_vert