Skip to main content

Membuat datalist tampil pada listview dan recyclerview di kotlin

Hii, Salam sejahtera Kuy' kali ini kita akan membuat satu aplikasi sederhana menggunakan kotlin, yang biasanya pakai java untuk depelov android, untuk beralih di kotlin itu enak banget, itu karena bahasa kotlin itu sederhana banget. oh iya kesempatan kali ini kita akan membahas gimana membuat aplikasi sederhana menampilkan data array di listview dan recylerview,
aplikasi sangat sederhana ya.
ok langsung saja buat project baru anda di kotlin, jangan lupa di convert dulu ke bahasa kotlin untuk yang mengguanakan androi studio versi 2.3.3 -.

kita akan perlu file seperti dibawah ini





untuk itu sediakan file gambar yang anda inginkan jika inginkan di letakan di folder drawable  :
file MainActivity
import android.content.Intent
import android.os.Bundle
import android.support.v7.app.AppCompatActivity
import kotlinx.android.synthetic.main.activity_main.*

class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        btnlistview.setOnClickListener{            actionPindah(SimpleActivity())
        }        btnrecylerview.setOnClickListener{            actionPindah(RecylerActivity())
        }
    }

    private fun actionPindah(simpleActivity: Any) {
        startActivity(Intent(applicationContext,simpleActivity::class.java))


    }
}


File CustomAdapter
import android.app.Activity
import android.content.Intent
import android.support.v7.widget.RecyclerView
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.ImageView
import android.widget.TextView

/** * Created by Server on 22/08/2017. */class CustomAdapter :RecyclerView.Adapter<CustomAdapter.Myholder> {
    var c : Activity? =null    var databuah2 : Array<String>?=null    var datagamabr : Array<Int>?=null    constructor(recylerActivity: RecylerActivity, dataBuah: Array<String>, dataGambar: Array<Int>)
    {
        c = recylerActivity
        databuah2 = dataBuah
        datagamabr = dataGambar
    }
        //set data ke recylerview    override fun onBindViewHolder(holder: Myholder?, position: Int) {
        //manggil dan set data        holder?.txt?.text = databuah2?.get(position)
        holder?.img?.setImageResource(datagamabr?.get(position)!!)

        holder?.img?.setOnClickListener{
            var intent = Intent(c,DetailBuah::class.java)
            intent.putExtra("txt",databuah2?.get(position))
            intent.putExtra("img",datagamabr?.get(position))
            c?.startActivity(intent)
        }


        //TODO("not implemented") //To change body of created functions use File | Settings | File Templates.    }
//mencreate pada layout list item    override fun onCreateViewHolder(parent: ViewGroup?, viewType: Int): Myholder {
        var view = LayoutInflater.from(c).inflate(R.layout.list_item,parent,false)
        return Myholder(view)

        //TODO("not implemented") //To change body of created functions use File | Settings | File Templates.    }
    //tampilkan data    override fun getItemCount(): Int {
        //return data gmbr        return databuah2?.size!!
        //TODO("not implemented") //To change body of created functions use File | Settings | File Templates.    }

    //deklarasi id pada customAdapter, id yang ada pada list_item    class Myholder(itemView: View?) : RecyclerView.ViewHolder(itemView) {
    var txt : TextView?= itemView?.findViewById(R.id.namabuah)
        var img : ImageView?= itemView?.findViewById(R.id.imglsitietm)


    }

}

File DetailBuah
import android.os.Bundle
import android.support.v7.app.AppCompatActivity
import kotlinx.android.synthetic.main.activity_detail_buah.*

class DetailBuah : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_detail_buah)

        //membuat variabel dan di tangkap data dri intent        var tangkap = intent.getStringExtra("txt")
        var tangkap2 = intent.getIntExtra("img",0)

        //menangkap data intent dan di set ke layout        detailtxt.text = tangkap
        imgdetail.setImageResource(tangkap2)
    }
}

File SimpleActiivty
import android.os.Bundle
import android.support.v7.app.AppCompatActivity
import android.widget.ArrayAdapter
import kotlinx.android.synthetic.main.activity_simple.*
import java.util.*

class SimpleActivity : AppCompatActivity() {
    var dataArray = arrayOf("10","50","80","40","100","30","-10","70","60")

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_simple)
        Arrays.sort(dataArray)
        var adapter = ArrayAdapter(SimpleActivity@this, android.R.layout.simple_list_item_1,dataArray)
         listview.adapter= adapter
    }
}

File RecylerActivity
import android.os.Bundle
import android.support.v7.app.AppCompatActivity
import android.support.v7.widget.LinearLayoutManager
import kotlinx.android.synthetic.main.activity_recyler.*

class RecylerActivity : AppCompatActivity() {
    //deklarasi    var dataBuah = arrayOf("alpukat","durian","jambuair","manggis","strawberry")
    var dataGambar= arrayOf(R.drawable.alpukat,R.drawable.durian,R.drawable.jambuair,
                            R.drawable.manggis,R.drawable.strawberry)

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_recyler)

        //custom adapter, nnt dibuatkan constructor nnti akan di buat contrut di custom adpater        var adapter = CustomAdapter(this, dataBuah, dataGambar)
        //buat layout manaager        var liner = LinearLayoutManager(applicationContext)
        //manggil listnya        recylerview.adapter = adapter
        recylerview.layoutManager=liner

    }
}


Hasil Gambar 







Link Donwload Project Disini








Comments

Popular posts from this blog

Menampilkan Gambar dengan Library Picasso dan Retrofit 2 di Android

Pada kesempatan kali ini kita akan membuat Aplikasi android yang dapat menampilkan gambar dari database maria DB ke android dengan studi kasus App Resep Makanan, disini kita akan menggunakan library yang namanya picasso untuk menampilkan gambar, dan retrofit untuk library parsing data dari database maria DB, disini kita memerlukan webservice menggunakan bahasa PHP untuk mendapatkan data json dari data yang ada di database. apa saja yang kita perlukan yaitu webservice, libarary picasso dan retrotif2. semua file modul dan project bisa di download di link post ini pilih tag Tampilkan Gambar di android menggunakan Picasso. semua file modul dan project bisa di download di link post ini pilih tag Tampilkan Gambar di android menggunakan Picasso. semua file modul dan project bisa di download di link post ini pilih tag Tampilkan Gambar di android menggunakan Picasso.   untuk tampilan aplikasinya bisa cek gambar dibawah ini, hanya memiliki 2 activity yaitu activity yang...

Aplikasi Crud Menggunakan Android Kotlin, Retrofit 2 dan API Lumen Framework

Hii Kuy'. Kesempatan kali ini saya akan berbagi App Android Crud menggunakan kotlin dengan librarynya menggunakan Retrofit 2 dan Api service menggunakan Framework Lumen. contoh aplikasinya yaitu studi kasus input Nis Siswa dan Nama Siswa. Aplikasi dapat menginput data siswa, menampil data siswa, mengedit data siswa dan menghapus data siswa. Aplikasi ini sebagai bahan latihan untuk teman-teman yang belajar kotlin, yang baru belajar maupun udah lama belajar java android, akan jatuh cinta ke bahasa kotlin, karena apa?

Membuat App Android Karyawan Inventory Menggunakan CRUD SQLite Part 1

Hii Kuy, salam sejahtera, semoga sehat selalu dan dalam lindungan Tuhan YME. aplikasi kali ini hanya untuk newbie ya. untuk teman-teman yang baru / mau belajar android /mobile proggramming seperti saya. Pada aplikasi kali ini yaitu membuat aplikasi karyawan inventory, apa itu karyawan inventory? yaitu satu aplikasi yang dapat menginput, menampilkan, mengedit dan