Cara untuk berpindah antara Activity di Android

Di Android user interface ditampilkan melalui suatu Activity. Dalam pengembangan aplikasi Android Anda mungkin menghadapi situasi di mana Anda perlu untuk beralih antara satu Activity (Layar / View) dengan activity yang lain. Dalam tutorial ini saya akan membahas tentang beralih antara Activity dengan activity lainnya dan mengirim data antara activity.
Sebelum masuk ke tutorial lengkap saya memberikan potongan kode untuk menangani perpindahan activity.  Mari kita asumsikan bahwa nama kelas Activity baru nya adalah SecondScreen.java

Membuka Activity Baru


Untuk membuka aktivity baru, metode yang digunakan adalah startActivity () atau startActivityForResult ()

Intent i = new Intent(getApplicationContext(), SecondScreen.class);
StartActivity(i);

Mengirim parameters ke Activity baru

Untuk merngirim parameter ke activity baru bisa menggunakan method putExtra() 



i.putExtra("key", "value");
 
// Example of sending email to next screen as
// Key = 'email'
// value = 'myemail@gmail.com'
i.putExtra("email", "myemail@gmail.com");

Menerima parameter di Activity baru

Untuk menerima parameter di Activity baru  pada SecondScreen.class gunakan method getStringExtra()



Intent i = getIntent();
i.getStringExtra("key");
 
// Example of receiving parameter having key value as 'email'
// and storing the value in a variable named myemail
String myemail = i.getStringExtra("email");

Membuka Activity baru dan melihat hasil

Dalam beberapa situasi Anda mungkin mengharapkan beberapa data kembali dari activity yang baru dibuat untuk melihat hasil. Anda bisa melakukannya dengan menggunakan method startActivityForResult (). Dan saat aktivitas baru ditutup Anda harus menggunakan metode onActivityResult () untuk membaca hasil yang dikembalikan.

Intent i = new Intent(getApplicationContext(), SecondScreen.class);
startActivityForResult(i, 100); // 100 is some code to identify the returning result
 
// Function to read the result from newly created activity
@Override
    protected void onActivityResult(int requestCode,
                                     int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if(resultCode == 100){
 
             // Storing result in a variable called myvar
             // get("website") 'website' is the key value result data
             String mywebsite = data.getExtras().get("result");
        }
 
    }

Gunakan StartActivityForResult () untuk mengirim hasil kembali ke aktivity lama.

Intent i = new Intent();
// Sending param key as 'website' and value as 'shinigamirulez.blogspot.com'
i.putExtra("website", "shinigamirulez.blogspot.com");
 
// Setting resultCode to 100 to identify on old activity
setResult(100,in);

Menutup Activity

Untuk menutup activity, gunakan method finish();

Menambah data ke AndroidManifest.xml

Untuk menjalankan aplikasi Anda harus memasukkan/mengenalkan aktivity baru Anda di AndroidManifest.xml. Tambahkan aktivitas baru antara tag


 Mari kita mulai dengan membuat project sederhana

Jadi sekarang kita memiliki semua potongan kode yang berkaitan dengan kegiatan. Dalam tutorial ini saya buat dua layout xml (screen1.xml, screen2.xml) dan dua Acvities (FirstScreenActivity.java, SecondScreenActivity.java). Diagram berikut akan memberi Anda gambaran tentang struktur file yang akan butuhkan dalam tutorial ini.


Sekarang mari kita mulai dengan membuat sebuah proyek sederhana.

1. Buat proyek baru file -> Project Android. Sementara membuat sebuah proyek memberi nama aktivitas baru sebagai FirstScreenActivity.
2. Sekarang Anda perlu membuat antarmuka pengguna untuk FirstScreenActivity.java
3. Buat file xml baru di folder layout atau mengubah nama main.xml untuk screen1.xml
Klik kanan pada Layout -> New -> Android file XML dan nama sebagai screen1.xml
4. Sekarang masukkan kode berikut di screen1.xml untuk membuat layout sederhana. Layout ini berisi form sederhana dengan tombol.



    
    
    
    
    


5. Sekarang buka FirstScreenActivity.java Anda dan Ketik kode berikut. Dalam kode berikut kita membuat Intent baru dan melewati parameter pada saat tombol di klik.

package com.example.androidswitchviews;
 
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
 
public class FirstScreenActivity extends Activity {
    // Initializing variables
    EditText inputName;
    EditText inputEmail;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.screen1);
 
        inputName = (EditText) findViewById(R.id.name);
        inputEmail = (EditText) findViewById(R.id.email);
        Button btnNextScreen = (Button) findViewById(R.id.btnNextScreen);
 
        //Listening to button event
        btnNextScreen.setOnClickListener(new View.OnClickListener() {
 
            public void onClick(View arg0) {
                //Starting a new Intent
                Intent nextScreen = new Intent(getApplicationContext(), SecondScreenActivity.class);
 
                //Sending data to another Activity
                nextScreen.putExtra("name", inputName.getText().toString());
                nextScreen.putExtra("email", inputEmail.getText().toString());
 
                Log.e("n", inputName.getText()+"."+ inputEmail.getText());
 
                startActivity(nextScreen);
 
            }
        });
    }
}

6. Buat kelas yang disebut SecondScreenActivity.java. Klik kanan pada src / folderpackageanda -> New -> Class dan nama sebagai SecondScreenActivity.java


7. Sekarang kita perlu screen untuk actvity Kedua. Buat file xml baru dan beri nama sebagai screen2.xml.
Klik kanan pada Layout -> New -> Android file XML dan nama sebagai screen2.xml. Masukkan kode berikut dalam screen2.xml.



 

 
  
 
  
 
  
 
  

8. Sekarang buka SecondScreenActivity.java dan ketik kode berikut. Di sini kita hanya membaca parameter dan menampilkan mereka di layar.

package com.example.androidswitchviews;
 
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
 
public class SecondScreenActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.screen2);
 
        TextView txtName = (TextView) findViewById(R.id.txtName);
        TextView txtEmail = (TextView) findViewById(R.id.txtEmail);
        Button btnClose = (Button) findViewById(R.id.btnClose);
 
        Intent i = getIntent();
        // Receiving the Data
        String name = i.getStringExtra("name");
        String email = i.getStringExtra("email");
        Log.e("Second Screen", name + "." + email);
 
        // Displaying Received data
        txtName.setText(name);
        txtEmail.setText(email);
 
        // Binding Click event to Button
        btnClose.setOnClickListener(new View.OnClickListener() {
 
            public void onClick(View arg0) {
                //Closing SecondScreen Activity
                finish();
            }
        });
 
    }
}

9. Sekarang semuanya sudah siap dan sebelum menjalankan proyek Anda, jangan lupa untuk memasukkan/mengenalkan activity baru di file AndroidManifest.xml. Buka file AndroidManifest.xml dan memodifikasi kode nya seperti di bawah ini


      
 
    
        
            
                
                
            
        
        
        
 
    


10. Akhirnya jalankan proyek Anda dengan mengklik kanan pada folder proyek Anda -> Run As -> 1 Aplikasi Android. Anda dapat melihat aplikasi berjalan dengan beralih antara layar. Di bawah gambar screenshot output kedua file xml.





0 Response to "Cara untuk berpindah antara Activity di Android"

Post a Comment