Untitled

 avatar
user_5593861113
kotlin
2 years ago
4.2 kB
5
Indexable
Never
package com.bunyaminsahin.superkahramanktab

import android.graphics.Bitmap
import android.graphics.BitmapFactory
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import androidx.recyclerview.widget.LinearLayoutManager
import kotlinx.android.synthetic.main.activity_tanitim.*

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        //1-superKahrmaan isimelerinden bir dizi oluşturuyoruz
        var SuperKahramanlar= ArrayList<String>()
        SuperKahramanlar.add("Batman")
        SuperKahramanlar.add("Superman")
        SuperKahramanlar.add("Ironman")
        SuperKahramanlar.add("Aquaman")
        SuperKahramanlar.add("Spiderman")



        /*
        2-Görselleri Bitmap e yani kod(encode) ye çeviriyoruz

        -res klasörünün açlımı  resources uygulamanın contexsi ile bu klasöre ulaşabilirsin
        -BitmapFactory görselleri nesneleştirir yani kod(decode) haline getirir
            *.decodeByteArray() internetten indirdiğin görselleri kod haline getirmek için kullanılır
            *.decodeFile() hafıza kartından veya cihaz hafızasından aldığın görselleri kod haline getirmek için kullanılır
            *.decodeResource() res dosyasının içerisindeki görseli kod haline getirmek için kullanılır
        -Uygulamanın içerisindeki tüm kaynaklara applicationContext.resources ile ulaşabilirsin

        */
        var BatmanBitmap=BitmapFactory.decodeResource(applicationContext.resources,R.drawable.batman)
        var SupermanBitmap=BitmapFactory.decodeResource(applicationContext.resources,R.drawable.superman)
        var IronmanBitmap=BitmapFactory.decodeResource(applicationContext.resources,R.drawable.ironman)
        var AquamanBitmap=BitmapFactory.decodeResource(applicationContext.resources,R.drawable.aquamen)
        var SpidermanBitmap=BitmapFactory.decodeResource(applicationContext.resources,R.drawable.spiderman)


        //3-super kahraman görsellerini dizinin içerisine ekliyoruz
        var super_kahraman_gorselleri= ArrayList<Bitmap>()
        super_kahraman_gorselleri.add(BatmanBitmap)
        super_kahraman_gorselleri.add(SupermanBitmap)
        super_kahraman_gorselleri.add(IronmanBitmap)
        super_kahraman_gorselleri.add(AquamanBitmap)
        super_kahraman_gorselleri.add(SpidermanBitmap)

        /*
        4-RecyclerView un içerisini oluşturacak bir arayüz oluşturmak

        --------------------------------------------------------------------------------------------
        RECYCLER_ROW AYARLAMA:
        recycler_row adını verdiğimiz arayüz sayfasının içerisinde yaptığımız her şey RecyclerView e gidecek

        1-constraintlayout yerine LinearLayout kullanıyoruz
        LinearLayout un orientationunu ver dikeymi yatay mı

        2-İçerisine bir tane TextView koyuyoruz genişliğini ve yüksekliğini ayarlıyoruz
                *"match_parent" ekranın tamamını kaplar
                *"wrap_content" orjinali ne kadarsa o kadar
        Her satır için ayrı LinearLayout oluşturduğmuz için LinearLayout un ekranı kaplamasına izin verme

        3-textSize ile metin büyüklüğünü ayarlıyoruz

        4-textColor ile metin rengini ayarlıyoruz

        5-margin ayarlıyoruz
                *layout_margin x ve y exsenine uzaklığını aynı anda belirler

        6-"@+id/ ile id veriyoruz

        --------------------------------------------------------------------------------------------


        5-recycler_row arayüzü  ile RecyclerView u birbirine bağlacak bir adaptorClass ı oluşturuyoruz

         */



        //veriyi karşı tarafa gönderidik
        var adaptor=RecyclerAdaptor(SuperKahramanlar,super_kahraman_gorselleri)


        //9-RecyclerView in görünümünü beliriyoruz

        var layoutManager=LinearLayoutManager(applicationContext)//Activity içerisinde olduğumuz için contexte this verdik
        recyclerView.layoutManager=layoutManager


        //10-adaptorlerimizi birbirne bağlıyoruz

        recyclerView.adapter=adaptor











    }
}