Proje oluşturulduğunda src/com.ornekler.sayisirala/ yolunun altında MainActivity.java yani MainActivity oluşturulduğunu da göreceksiniz. Bu activity’i ana ekran için kullanacağız. Kullanıcı bu ekranda zorluk derecesiniz belirleyebilecek.
Şimdi bu activity kullandığı layout’un tasarımını yapmalıyız. res/layout altındaki main.xml layout’u şu şekilde tasarlıyoruz.
main.xml |
MainActivity içerisinde özelleştirilmiş dialog kutusu da kullanacağımız için birde dlg_ozel.xml adında yeni bir layout daha oluşturuyoruz.
Res/layout dizini üzerinde sağ tıklayıp New>Other… a tıklayıp Android/Android XML Layout File komutunu verip ileri tıklayalım. File kutusuna “dlg_ozel” yazıp layout oluşturalım. Aşağıdaki gibi bir tasarım yapıyorum.
dlg_ozel.xml |
Layoyut tasarımının ardında MainActivity.java yı kodlamaya başlayabiliriz.
MainActivity.java
package com.ornekler.sayisirala; import android.app.Activity; import android.app.AlertDialog; import android.content.DialogInterface; import android.content.Intent; import android.graphics.Typeface; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; public class MainActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); this.setTitle("Sayı Sırala - Seviye Seç"); Button btnBasit = (Button) this.findViewById(R.id.btnBasit); Button btnOrta = (Button) this.findViewById(R.id.btnOrta); Button btnOzel = (Button) this.findViewById(R.id.btnOzel); Typeface font = Typeface.createFromAsset(getAssets(), "font/Corv2.ttf"); btnBasit.setTypeface(font); btnBasit.setTextSize(36.f); btnOrta.setTypeface(font); btnOrta.setTextSize(36.f); btnOzel.setTypeface(font); btnOzel.setTextSize(36.f); btnBasit.setOnClickListener( new OnClickListener(){ @Override public void onClick(View v) { Intent i = new Intent(getApplicationContext(), OyunActivity.class); i.putExtra("sutunSayisi", 3); i.putExtra("satirSayisi", 2); startActivity(i); } }); btnOrta.setOnClickListener( new OnClickListener(){ @Override public void onClick(View v) { Intent i = new Intent(getApplicationContext(), OyunActivity.class); i.putExtra("sutunSayisi", 3); i.putExtra("satirSayisi", 3); startActivity(i); } }); btnOzel.setOnClickListener( new OnClickListener(){ @Override public void onClick(View v) { AlertDialog.Builder builder; AlertDialog alertDialog; LayoutInflater factory = LayoutInflater.from(v.getContext()); final View textEntryView = factory.inflate(R.layout.dlg_ozel, null); builder = new AlertDialog.Builder(v.getContext()); builder.setView(textEntryView); builder.setTitle("Özel Ayarlar"); builder.setMessage("Sütun ve satır sayısını gir"); builder.setPositiveButton("Oyna", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { EditText editTextSutunSayisi = (EditText) textEntryView.findViewById(R.id.editTextSutunSayisi); EditText editTextSatirSayisi = (EditText) textEntryView.findViewById(R.id.editTextSatirSayisi); Intent i = new Intent(getApplicationContext(), OyunActivity.class); i.putExtra("sutunSayisi", Integer.parseInt(editTextSutunSayisi.getText().toString())); i.putExtra("satirSayisi", Integer.parseInt(editTextSatirSayisi.getText().toString())); startActivity(i); } }); builder.setNegativeButton("İptal", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.cancel(); } }); alertDialog = builder.create(); alertDialog.show(); } }); } }
Hiç yorum yok:
Yorum Gönder