Bu dersimizde recyclerview uygulamamıza devam ediyoruz. Bu derste veri kaynağımızı hazırlayacağız.
Genel yaklaşım olarak göstermek istediğiniz liste öğesini ve onla ilgili bilgileri içeren bir sınıf oluşturmak işlerimizi kolay hale getirecektir. Bizim örneğimizde listede manzara ve onunla ilgili bilgiler göstermek istediğimiz için Manzara adında bir sınıf oluşturduk ve ilgili bilgileri burda belirttik. Yine bu sınıfın içinde tüm verileri oluşturup geri gönderen bir getData methodu yaptık. Bu method sayesinde tüm manzara resimlerine başlık ve tanım bilgilerine istediğimiz yerden erişebileceğiz.
Bu derste yazılan Manzara.java kodu aşağıdadır. Bir önceki derste yazılan layout kodlarını da aşağıda bulabilirsiniz. Uygulamanın bitmiş halini ve kullanılan resimleri indirmek için LÜTFEN BURAYI tıklayınız…..
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 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 |
import java.util.ArrayList; public class Manzara { private int imageID; private String baslik; private String tanim; public int getImageID() { return imageID; } public String getBaslik() { return baslik; } public String getTanim() { return tanim; } public void setImageID(int imageID) { this.imageID = imageID; } public void setBaslik(String baslik) { this.baslik = baslik; } public void setTanim(String tanim) { this.tanim = tanim; } public static ArrayList<Manzara> getData(){ ArrayList<Manzara> dataList=new ArrayList<Manzara>(); int[] resimler= { R.drawable.thumb_1_0, R.drawable.thumb_1_1, R.drawable.thumb_1_2, R.drawable.thumb_1_3, R.drawable.thumb_1_4, R.drawable.thumb_1_5, R.drawable.thumb_1_6, R.drawable.thumb_1_7, R.drawable.thumb_1_8, R.drawable.thumb_1_9, R.drawable.thumb_2_0, R.drawable.thumb_2_1, R.drawable.thumb_2_2, R.drawable.thumb_2_3, R.drawable.thumb_2_4, R.drawable.thumb_2_5, R.drawable.thumb_2_6, R.drawable.thumb_2_7, R.drawable.thumb_2_8, R.drawable.thumb_2_9, R.drawable.thumb_3_0, R.drawable.thumb_3_1, R.drawable.thumb_3_2, R.drawable.thumb_3_3, R.drawable.thumb_3_4, R.drawable.thumb_3_5, R.drawable.thumb_3_6, R.drawable.thumb_3_7, R.drawable.thumb_3_8, R.drawable.thumb_3_9, R.drawable.thumb_4_0, R.drawable.thumb_4_1, R.drawable.thumb_4_2, R.drawable.thumb_4_3, R.drawable.thumb_4_4, R.drawable.thumb_4_5, R.drawable.thumb_4_6, R.drawable.thumb_4_7, R.drawable.thumb_4_8, R.drawable.thumb_4_9, R.drawable.thumb_5_0, R.drawable.thumb_5_1, R.drawable.thumb_5_2, R.drawable.thumb_5_3, R.drawable.thumb_5_4, R.drawable.thumb_5_5, R.drawable.thumb_5_6, R.drawable.thumb_5_7, R.drawable.thumb_5_8, R.drawable.thumb_5_9, R.drawable.thumb_6_0, R.drawable.thumb_6_1, R.drawable.thumb_6_2, R.drawable.thumb_6_3, R.drawable.thumb_6_4, R.drawable.thumb_6_5, R.drawable.thumb_6_6, R.drawable.thumb_6_7, R.drawable.thumb_6_8, R.drawable.thumb_6_9, R.drawable.thumb_7_0, R.drawable.thumb_7_1, R.drawable.thumb_7_2, R.drawable.thumb_7_3, R.drawable.thumb_7_4 }; for(int i=0; i<resimler.length; i++){ Manzara gecici=new Manzara(); gecici.setImageID(resimler[i]); gecici.setBaslik("Manzara "+i); gecici.setTanim("Tanım bilgisi "+i); dataList.add(gecici); } return dataList; } } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
<?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:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.example.emrealtunbilek.materialrecyclerviewornek.MainActivity"> <android.support.v7.widget.RecyclerView android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/recyclerview" > </android.support.v7.widget.RecyclerView> </RelativeLayout> |
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 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 |
<?xml version="1.0" encoding="utf-8"?> <android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginLeft="5dp" android:layout_marginRight="5dp" android:layout_marginTop="5dp" app:cardCornerRadius="5dp" android:id="@+id/rootCardView" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@android:color/white" android:orientation="horizontal" > <ImageView android:layout_width="60dp" android:layout_height="60dp" android:id="@+id/imgManzara" android:src="@drawable/thumb_1_0" /> <LinearLayout android:layout_width="0dp" android:layout_height="match_parent" android:orientation="vertical" android:layout_weight="1" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Manzara" android:textSize="18sp" android:id="@+id/tvManzaraBaslik" android:textStyle="bold" android:layout_margin="7dp" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Manzara Tanım" android:textSize="14sp" android:id="@+id/tvManzaraTanim" android:textStyle="italic" android:layout_marginLeft="7dp" /> </LinearLayout> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical" > <ImageView android:layout_width="20dp" android:layout_height="20dp" android:layout_margin="7dp" android:id="@+id/imgSil" android:tint="@color/colorAccent" android:src="@drawable/ic_delete"/> <ImageView android:layout_width="20dp" android:layout_height="20dp" android:layout_margin="7dp" android:id="@+id/imgKopyala" android:tint="@color/colorAccent" android:src="@drawable/ic_make_copy"/> </LinearLayout> </LinearLayout> </android.support.v7.widget.CardView> |