Merhabalar android dünyasında yeniyim normal recyclerview yapabiliyorum fakat firebase'den bir türlü veriyi getiremedim
yapmak istediğim şey liderlik tablosu gibi bir şey skora göre sıralanacak
User
code tagı içinde düzgün gözükmediği için kod tagı içinde ve dışında atıyorum
class User { var user_id:String?=null var username:String?=null var image:Int?=null var score:String?=null constructor(user_id: String, username: String, image: Int, score: String) { this.user_id = user_id this.username = username this.image = image this.score = score } constructor() {}}class User {
var user_id:String?=null
var username:String?=null
var image:Int?=null
var score:String?=null
constructor(user_id: String, username: String, image: Int, score: String) {
this.user_id = user_id
this.username = username
this.image = image
this.score = score
}
constructor() {}
}
Adapter class Adapter( val leaders: MutableList<User>, val context: Context) : RecyclerView.Adapter<Adapter.LeadersViewHolder>() { override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): LeadersViewHolder { return LeadersViewHolder(LayoutInflater.from(context).inflate(R.layout.leader_row_layout, parent, false)) } override fun getItemCount() = leaders.size override fun onBindViewHolder(holder: LeadersViewHolder, position: Int) { with(leaders[position]) { holder.nickname.text = username holder.point.text = score holder.image.setImageResource(image!!) } } class LeadersViewHolder(view: View) : RecyclerView.ViewHolder(view) { val image= view.leadersRowIV val nickname= view.leadersRowNickNameTV val point= view.leadersRowPointTV }}
class Adapter(val leaders: MutableList<User>,val context: Context) : RecyclerView.Adapter<Adapter.LeadersViewHolder>() {
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): LeadersViewHolder {
return LeadersViewHolder(LayoutInflater.from(context).inf late(R.layout.leader_row_layout, parent, false))
}
override fun getItemCount() = leaders.size
override fun onBindViewHolder(holder: LeadersViewHolder, position: Int) {
with(leaders[position]) {
holder.nickname.text = username
holder.point.text = score
holder.image.setImageResource(image!!)
}
}
class LeadersViewHolder(view: View) : RecyclerView.ViewHolder(view) {
val image= view.leadersRowIV
val nickname= view.leadersRowNickNameTV
val point= view.leadersRowPointTV
}
}
Activity class Activity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.leaders_activity) val mLayoutManager = LinearLayoutManager(this) with(leadersRV) { layoutManager = mLayoutManager adapter = Adapter(generateLeadersData(), this@Activity) } } private fun generateLeadersData(): MutableList<User> { var referans = FirebaseDatabase.getInstance() } }
class Activity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.leaders_activity)
val mLayoutManager = LinearLayoutManager(this)
with(leadersRV) {
layoutManager = mLayoutManager
adapter = Adapter(generateLeadersData(), this@Activity)
}
}
private fun generateLeadersData(): MutableList<User> {
var referans = FirebaseDatabase.getInstance()
}
}