Buat satu project android, kemudian silakan pilih berkas activity_main.xml pada workspace Anda (res/layout/activity_main.xml), dan ikutin coding seperti di bawah :
<?xml version="1.0" encoding="utf-8"?><LinearLayout 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"android:orientation="vertical"android:padding="16dp"><Buttonandroid:id="@+id/btn_move_activity"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_marginBottom="16dp"android:text="@string/move_activity" /><Buttonandroid:id="@+id/btn_move_activity_data"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_marginBottom="16dp"android:text="@string/move_with_data" /><Buttonandroid:id="@+id/btn_dial_number"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_marginBottom="16dp"android:text="@string/dial_number" /></LinearLayout>
dan atur juga resources pada berkas res/values/strings.xml seperti ini :
<resources><string name="app_name">MyIntentApp</string><string name="move_activity">Pindah Activity</string><string name="move_with_data">Pindah Activity dengan Data</string><string name="dial_number">Dial a Number</string><string name="data_received">Data Diterima</string><string name="this_is_moveactivity">Ini MoveActivity</string></resources>
Selanjutnya setelah selesai, lanjutkan dengan membuka berkas MainActivity.Java dan lanjutkan ngoding baris-baris di bawah ini :
public class MainActivity extends AppCompatActivity implements View.OnClickListener{@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);Button btnMoveActivity = findViewById(R.id.btn_move_activity);btnMoveActivity.setOnClickListener(this);Button btnMoveWithDataActivity = findViewById(R.id.btn_move_activity_data);btnMoveWithDataActivity.setOnClickListener(this);Button btnDialPhone = findViewById(R.id.btn_dial_number);btnDialPhone.setOnClickListener(this);}@Overridepublic void onClick(View v) {if (v.getId() == R.id.btn_move_activity) {Intent moveIntent = new Intent(MainActivity.this, MoveActivity.class);startActivity(moveIntent);} else if (v.getId() == R.id.btn_move_activity_data) {Intent moveWithDataIntent = new Intent(MainActivity.this, MoveWithDataActivity.class);moveWithDataIntent.putExtra(MoveWithDataActivity.EXTRA_NAME, "DicodingAcademy Boy");moveWithDataIntent.putExtra(MoveWithDataActivity.EXTRA_AGE, 5);startActivity(moveWithDataIntent);} else if (v.getId() == R.id.btn_dial_number) {String phoneNumber = "081210841382";Intent dialPhoneIntent = new Intent(Intent.ACTION_DIAL, Uri.parse("tel:" + phoneNumber));startActivity(dialPhoneIntent);}}}
Pertama buat activity baru untuk menampilkan perpindahan activity dengan cara sebagai berikut : Klik kanan di package utama aplikasi package name → New → Activity → Empty Activity. Dan beri nama dengan MoveActivity dan layout name activity_move. Lalu buka activity_move.xml dan tambahkan satu TextView seperti berikut :
<?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:layout_width="match_parent"android:layout_height="match_parent"android:padding="16dp"><TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:text="@string/this_is_moveactivity" /></RelativeLayout>
Kedua buat activity baru untuk menampilkan perpindahan activity dengan mengirim data dan beri nama dengan MoveWithDataActivity dan layout name activity_move_with_data. Lalu buka activity_move_with_data.xml dan tambahkan satu TextView seperti berikut :
<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:padding="16dp"><TextViewandroid:id="@+id/tv_data_received"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="@string/data_received" /></RelativeLayout>
dan buka activity_move_with_data.java dan kondisikan sesuai perintah dibawah ini :
public class MoveWithDataActivity extends AppCompatActivity {public static final String EXTRA_AGE = "extra_age";public static final String EXTRA_NAME = "extra_name";@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_move_with_data);TextView tvDataReceived = findViewById(R.id.tv_data_received);String name = getIntent().getStringExtra(EXTRA_NAME);int age = getIntent().getIntExtra(EXTRA_AGE, 0);String text = "Name : " + name + ",\nYour Age : " + age;tvDataReceived.setText(text);}}
Terakhir pastikan activity yang dibuat sudah ter-register pada AndroidManifest.xml, tampilan dapat dilihat seperti berikut :
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android"package="com.dicoding.picodiploma.myintentapp"><applicationandroid:allowBackup="true"android:icon="@mipmap/ic_launcher"android:label="@string/app_name"android:supportsRtl="true"android:theme="@style/AppTheme"><activity android:name=".MainActivity"><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter></activity><activity android:name=".MoveActivity" /><activity android:name=".MoveWithDataActivity " /></application></manifest>
*Update Android Studio 4.1
Selamat mencoba, terima kasih.