Galera,
Vamos supor que no primeiro item da recyclerview a margin top seja de 16dp, e nas demais fosse 8dp. Como a gente faria pra setar esse valor?
class ListaProdutosAdapter(
private val context: Context,
private val produto: List<Produto>
) : RecyclerView.Adapter<ListaProdutosAdapter.viewHolder>() {
class viewHolder(view: View) : RecyclerView.ViewHolder(view) {
fun vincula(produto: Produto) {
val imagem = itemView.findViewById<ImageView>(R.id.img_preview)
imagem.setBackgroundResource(produto.img)
val nome = itemView.findViewById<TextView>(R.id.nome)
nome.text = produto.nome.replaceFirstChar(Char::titlecase)
val descricao = itemView.findViewById<TextView>(R.id.descricao)
descricao.text = produto.descricao.replaceFirstChar(Char::titlecase)
val valor = itemView.findViewById<TextView>(R.id.valor)
valor.text = produto.valor.toPlainString()
}
}
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): viewHolder {
val inflater = LayoutInflater.from(context)
val view = inflater.inflate(R.layout.produto_item, parent, false)
return viewHolder(view)
}
override fun onBindViewHolder(holder: viewHolder, position: Int) {
val produto = produto[position]
holder.vincula(produto)
}
override fun getItemCount(): Int = produto.size
}