Android Liste Oluşturma (ListView)

Android Liste Oluşturma (ListView)
Bilinmeyen Bilişim Kitabı

Hello hacılar.

Android uygulama derslerine devam ediyoruz. Bu derste Android uygulamamıza bir tane atıcaz ve içini doldurucaz. Bununla da kalmayıp listelenen her bir öğeye tıklama özelliği kazanıdırıcaz ve tıkladığımız öğenin ismini sayesinde kısa bir süre görünüp kaybolmasını sağlayacaz.

Fakat bununla yetinmicez, “delikanlı ol amk, ne öyle bir görünüp kaçmak” diyecez ve tıkladığımız öğenin ismini kalıcı olarak görebilmemiz için ListView’de tıkladığımız öğenin TextView’de görünmesini sağlıcaz. (Görende çok bok yicez sanacak …) Neyse biz işimize bakıp kodlara yumulalım.

ÖZELLİĞİ İLE

xml dosyamıza Palette bulunan, Composite altından ListView ekliyoruz:

1
 

MainActivity.Java kodları:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
package com.example.listviewdeneme;
 
import android.support.v7.app.ActionBarActivity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
import android.os.Bundle;
 
 
public class MainActivity extends ActionBarActivity {
	//Değişkenimizi tanımlıyoruz.
	ListView lv;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //Tanımladığımız değişkeni ListView ile ilişkilendiriyoruz.
        lv = (ListView)findViewById(R.id.lv1);
        //ListView'imizi dolduruyoruz.
        final String[]Sehirler = {"İzmir","İstanbul","Ankara"};
        final ArrayAdapter adaptor = new ArrayAdapter(MainActivity.this, android.R.layout.simple_list_item_1,Sehirler);
 
        lv.setAdapter(adaptor);
        //ListView öğelerine tıklama özelliği kazandırıyoruz.
        //Burada dikkat edilmesi gereken nokta int kısmına position, long kısmına id yazıyoruz. Otomatik tamamlandığı için es geçmeyin.
        lv.setOnItemClickListener(new OnItemClickListener() {
 
			@Override
			public void onItemClick(AdapterView<?> arg0, View arg1, int position,
					long id) {
				//ListView'de ki hangi öğeye tıklanırsa onun adının yazıp kaybolması için gerekli kodları yazıyoruz.
				Toast.makeText(MainActivity.this, adaptor.getItem(position), Toast.LENGTH_LONG).show();
			}
 
		});
    }
}

Android Liste Oluşturma (ListView)

TEXTVIEW İLE

Evet emmi oğulları bu noktaya kadar yaptıklarımız ile Toast özelliğini kullanmış ve listedeki tıkladığımız öğenin görünüp kaybolmasını sağlamış bulunmaktayız. Fakat biz bunun yerine ListView’de tıkladığımız öğenin görünüp kaybolmasını değilde kalıcı olmasını istiyorsak o zaman xml’imize bir tane TextView ekliyoruz:

1
 

MainActivity.Java kodlarımızda böyle oluyor:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
package com.example.listviewdeneme;
 
import android.support.v7.app.ActionBarActivity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
import android.os.Bundle;
 
 
public class MainActivity extends ActionBarActivity {
 
	ListView lv;
	//TextView'imiz için değişken ismi oluşturuyoruz.
	TextView tv;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        lv = (ListView)findViewById(R.id.lv1);
        //Oluşturduğumuz değişkeni TextView'imiz ile ilişkilendiriyoruz.
        tv = (TextView)findViewById(R.id.tv1);
 
        final String[]Sehirler = {"İzmir","İstanbul","Ankara"};
        final ArrayAdapter adaptor = new ArrayAdapter(MainActivity.this, android.R.layout.simple_list_item_1,Sehirler);
 
        lv.setAdapter(adaptor);
 
        lv.setOnItemClickListener(new OnItemClickListener() {
 
			@Override
			public void onItemClick(AdapterView<?> arg0, View arg1, int position,
					long id) {
				//Tıklanılan öğenin TextView'de görülmesi için gerekli kodları yazıyoruz.
				//Tıklanılan öğenin başında bir şey yazmasını isterseniz: tv.setText("BURAYA YAZIN"+adaptor.getItem(position)); şeklinde yazabilirsiniz.
				tv.setText(adaptor.getItem(position));
			}
 
		});
    }
}

Android Liste Oluşturma (ListView)
Bir yolculuğunda bir basamak daha çıkmış olduk hala torunları. Bu derste proje geliştirmede işimize yarama ihtimali yüksek olan ListView özelliğini tanımış olduk.

Bir sonra ki konuda tekrar görüşmek üzere kendinizi şımartın …

Bilinmeyen Bilişim Kitabı
  • Amk Herif

    Var artık amk! Bir yorum var (bunları onayla bak o kadar uğraşıyom boka gitmesin)

  • arsen

    hocam ben programlarimi appsgeyser uzerinden yayinliyorum ama belli indirmeden sonra reklam cikiyor.eclipse ile appsgeyserde oldugu gibi kodlarini hazirladigim web sitemin sadece adresini girerek program olusturmam mumkunmu

  • ahmet

    merhabalar ben android proglamlama videolarını izledim ama yapmak istedigim ğrogramı nasıl yapacam bilmiorum yapmak istediğim program sudur teelefona şifre koyar herkez biliyorsunuz harf rakam model ama bnm istediğim şifremin saat olması yani saat 14.32 is şifrenin 4312 olması 14,30 ise4310olması buna benzer yapmayı calışıyorm ama yapamıyorum yyardımcı olur musunuz

  • KodcuHerif

    Gençler videonun bir tanesinde söylemiş olmam lazım (gerçi her videoyu tekrar tekrar çektim, yayınlananlar arasında var mı hatırlamıyorum). Ben Android ‘te çokta kayda değer bir bilgiye sahip değilim. Bir dönem boş vaktim vardı, o ara ilgilenmeye başladım. Öğrenerek öğretmek istedim.

    WebTekno ‘da yazmaya başladıktan sonra kalan o boş zamanımı WebTekno ‘ya ayırmaya başladım. Dolayısıyla Android ‘te profesyonel değilim. Sorularınıza cevap verebilecek arkadaşlar varsa buradan cevaplamasını rica ediyorum.

  • Albatros bc

    peki listeden birine basınca yeni bir sayfayı nasıl açabiliriz?