Android

Android Studio Uygulamalarında Intent Kullanımı

Intent yardımıyla başka bir aktiviteyi başlatabilir, bir servisin çalışmasını tetikleyebilir veya gerçekleşen bir olaydan bütün sistemi haberdar edebilirsiniz. Bu da Intentleri, uygulamaları kendi içerisinde ve farklı uygulamaları birbirleri arasında bağlayan bir köprü haline getirir. En kısa tanımıyla bir şeyin yapılmasını isteyen bir mesaj nesnesidir. Ayrıca Intentler activity veya servicelere gönderilecek bir takım bilgileri paketlemeye de yarar.

Bu uygulamamızda kullanıcıdan kullanıcı adı ve şifre işlemlerini birinci pencerede isteyeceğiz. Eğer bilgiler doğruysa bu bilgileri ikinci pencereye gönderip orada listelenmesini sağlayacağız. Ayrıca ikinci pencereden birinci pencereye geri dönme işlemini de gerçekelştireceğiz. Öncelikle pencereler arası geçiş nasıl yapılıyor ona bakalım. Birinci activity için activity_main.xml tasarım dosyasını kullanacağız. İçeriği aşağıdaki gibi olsun.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_marginTop="35dp"
    android:gravity="center_horizontal"
    android:orientation="vertical">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Kullanıcı Girişi"
        android:textSize="35sp" />

    <EditText
        android:id="@+id/etName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ems="10"
        android:hint="Kullanıcı Adı"
        android:textSize="20sp">

        <requestFocus />
    </EditText>

    <EditText
        android:id="@+id/etPass"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ems="10"
        android:hint="Şifre"
        android:textSize="20sp"></EditText>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center_horizontal">

        <Button
            android:id="@+id/gonder"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Gönder"></Button>

        <Button
            android:id="@+id/temizle"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Temizle"></Button>
    </LinearLayout>
</LinearLayout>

Birinci activity için kullanılan MainActivity.java dosyası aşağıdaki gibi olacaktır.

public class MainActivity extends AppCompatActivity implements 
View.OnClickListener {
    Context context = this;
    EditText etName, etPass;
    Button gonder, temizle;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        etName = findViewById(R.id.etName);
        etPass = findViewById(R.id.etPass);
        gonder = findViewById(R.id.gonder);
        temizle = findViewById(R.id.temizle);

        gonder.setOnClickListener(this);
        temizle.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.gonder:
                if (etName.getText().toString().equalsIgnoreCase("admin") 
&& etPass.getText().toString().equals("123")) {
                    Intent intent = new Intent(context, SecondActivity.class);
                    startActivity(intent);
                } else {
                    Toast.makeText(context, "Kullanıcı adı ve şifre hatalı", 
Toast.LENGTH_SHORT).show();
                }
                break;
            case R.id.temizle:
                etName.setText("");
                etPass.setText("");
                etName.requestFocus();
                break;
        }
    }
}

İkinci activity için tasarım dosyası second_layout.xml olsun.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="İkinc Ekran"
        android:textSize="35dp"></TextView>
</LinearLayout>

İkinci activity için kullanılan SecondActivity.java dosyası aşağıdaki gibi olacaktır.

public class SecondActivity extends AppCompatActivity {
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.second_layout);
    }
}

Uygulamayı kaydedip çalıştırabiliriz. Bu arada manifest dosyasına aşağıdaki satırı eklemeyi unutmayalım.

<activity android:name=".SecondActivity"></activity>

Uygulamayı çalıştırdığınızda kullanıcı adı ve şifreyi doğru girdiğinizde ikince ekran gelir. Biz burada girilen kullanıcı adını ve şifreyi ikinci ekranda göstereceğiz. Böylece ekranlar arasında işlemleri gerçekleştirmiş olacağız. Bundan dolayı MainActivity.java dosyasında gönderme işlemini yapalım.

          intent.putExtra("isim",etName.getText().toString());
          intent.putExtra("sifre",etPass.getText().toString());

Şimdi bu değerlerin ikinci sayfada alınmasını ve değerlerin gösterilmesini yapacağız. Öncelikle second_layout.xml dosyasını düzenleyelim.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <TextView
        android:id="@+id/txtGelenDeger"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="İkinci Sayfa"
        android:textAppearance="@style/TextAppearance.AppCompat.Large"
        android:textSize="35sp" />

    <Button
        android:id="@+id/btnSiteyeGit"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Siteye Git" />

    <Button
        android:id="@+id/btnGeri"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Geri" />
</LinearLayout>

Şimdi de SecondActivity.java dosyasını düzenleyelim.

    Button btnSiteyeGit, btnGeri;
    TextView txtGelenDeger;
    Context context = this;

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.second_layout);

        txtGelenDeger = (TextView) findViewById(R.id.txtGelenDeger);

        Intent intent = getIntent();
        String ad = intent.getStringExtra("isim");
        String sifre = intent.getStringExtra("sifre");
        txtGelenDeger.setText("Hoş Geldin " + ad + "\nŞifreniz : " + sifre);

        btnSiteyeGit = (Button) findViewById(R.id.btnSiteyeGit);
        btnGeri = (Button) findViewById(R.id.btnGeri);

        btnSiteyeGit.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(Intent.ACTION_VIEW);
                intent.setData(Uri.parse("http://www.maarificedid.com"));
                startActivity(intent);
            }
        });

        btnGeri.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(context, MainActivity.class);
                startActivity(intent);
            }
        });

    }

Projeyi kaydedip çalıştıralım. Kullanıcı adı ve şifrenin ikinci sayfaya geçtiğini ve sitenin açıldığını görürsünüz. 


İlgili Makaleler
App Inventor 2 Uygulamasında Köstebek Oyunu
App Inventor Uygulamasında Belli Bir Süre İçinde Sayı Toplama Oyunu
Android Studio İçin Meb Sertifika Yükleme
Gmail Hesabi Açmak, Gmail Kaydol, Yeni Bir Gmail Hesabı Oluşturma
Personele Ait Yaş Bilgisini Kapsülleyerek Tanımlayan Android Java Uygulaması
Mevsimlere Ait Ayları ViewBinding Yöntemini Kullanarak Android Java Kodlarıyla Tasarlama
Beni Hatırla Seçeneğiyle Birlikte Kullanıcı Adı ve Şifre İşlemlerini Gerçekleştiren Android Java Uygulaması
App Inventor 2 Kurulumu
Android Studio Programında SharedPreferenc Sınıfı Oluşturma
Ksoap Kütüphanesini Android Studio Projesine Dahil Etme
Android Studio Programında Shared Preferences Kullanımı
Android Java Application Using TabbedActivty and Fragment to Login Username and Password
Telefon Araması Yapan Android Java Uygulaması
Girilen Bilgiyi SharedPreferences Kullanarak Kaydedip Görüntüleyen Android Java Uygulaması
Ekran Tema Değişikliği Yapıp Saklayan Android Java Uygulaması
Galeride Bulunan Resimlerden Birini ImageView Nesnesinde Gösteren Android Java Uygulaması
No Activity Seçeneğiyle Oluşturulan Projede Sayıları Arttıran Android Java Uygulaması
Girilen Şehir Adını Görüntüleyen Uygulamayı Android Studio Programında Yapınız
AnyDesk Programıyla Cep Telefonu Görüntüsünü Bilgisayara Aktarma
Yemek Siparişi Veren Form Sayfasını Code Sekmesini Kullanarak Android Studio Programında Yapma

Yorum Ekle
   
Kötü İyi