0
点赞
收藏
分享

微信扫一扫

Koltin25,android开发游戏加速器

金穗_ec4b 2022-01-25 阅读 71

package com.example.takeout.ui.adapter

import android.content.Context

import android.view.View

import android.view.ViewGroup

import android.widget.ImageView

import android.widget.RatingBar

import android.widget.TextView

import androidx.recyclerview.widget.RecyclerView

import com.daimajia.slider.library.SliderLayout

import com.daimajia.slider.library.SliderTypes.TextSliderView

import com.example.takeout.R

import com.heima.takeout.model.beans.Seller

import com.squareup.picasso.Picasso

import org.jetbrains.anko.find

class HomeRvAdapter(val context: Context) : RecyclerView.Adapter<RecyclerView.ViewHolder>() {

//定义常量

companion object {

val TYPE_TITLE = 0

val TYPE_SELLER = 1

}

val host = “http://127.0.0.1:8090/image?name=”

var mDatas: ArrayList = ArrayList()

fun setData(data: ArrayList) {

this.mDatas = data

notifyDataSetChanged()

}

/**

  • 不同position对应不同类型

*/

override fun getItemViewType(position: Int): Int {

if (position == 0) {

return TYPE_TITLE

} else {

return TYPE_SELLER

}

}

override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int) {

val viewType = getItemViewType(position)

when (viewType) {

TYPE_TITLE -> (holder as TitleHolder).bindData(“我是title----------------------------------------”)

TYPE_SELLER -> (holder as SellerHolder).bindData(mDatas[position - 1])

}

}

override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder {

when (viewType) {

TYPE_TITLE -> return TitleHolder(View.inflate(context, R.layout.item_title, null))

TYPE_SELLER -> return SellerHolder(View.inflate(context, R.layout.item_seller, null))

else -> return TitleHolder(View.inflate(context, R.layout.item_home_common, null))

}

}

override fun getItemCount(): Int {

if (mDatas.size > 0) {

return mDatas.size + 1

} else {

return 0

}

}

//内部类,商家的holder

inner class SellerHolder(item: View) : RecyclerView.ViewHolder(item) {

val tvTitle: TextView

val ivLogo: ImageView

val rbScore: RatingBar

val tvSale: TextView

val tvSendPrice: TextView

init {

tvTitle = item.find(R.id.tv_title)

ivLogo = item.find(R.id.seller_logo)

rbScore = item.find(R.id.ratingBar)

tvSale = item.find(R.id.tv_home_sale)

tvSendPrice = item.find(R.id.tv_home_send_price)

}

fun bindData(seller: Seller) {

tvTitle.text = seller.name

//图片路径http://127.0.0.1:8090/image?name=takeout/imgs/seller/3.jpg

println(“seller.ensure====” + seller.ensure)

Picasso.with(context).load(host + seller.ensure).into(ivLogo)

rbScore.rating = seller.score.toFloat()

tvSale.text = “月售${seller.sale}单”

tvSendPrice.text = “¥ s e l l e r . s e n d P r i c e 起 送 / 配 送 费 ¥ {seller.sendPrice}起送/配送费¥ seller.sendPrice/{seller.deliveryFee}”

}

}

//存放图片的url和名称

var url_maps: HashMap<String, Int> = HashMap()

//内部类,title的holder

inner class TitleHolder(item: View) : Recycle
rView.ViewHolder(item) {

val sliderLayout: SliderLayout

init {

, Int> = HashMap()

//内部类,title的holder

inner class TitleHolder(item: View) : Recycle[外链图片转存中…(img-95hwL7Cn-1643090222040)]
rView.ViewHolder(item) {

val sliderLayout: SliderLayout

init {

举报

相关推荐

0 条评论