Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 我对项目中每个项目的适配器定位都有问题_Android_Kotlin_Android Recyclerview - Fatal编程技术网

Android 我对项目中每个项目的适配器定位都有问题

Android 我对项目中每个项目的适配器定位都有问题,android,kotlin,android-recyclerview,Android,Kotlin,Android Recyclerview,这是我的回收观点 我创建了一些产品,并使用recyclerview向他们展示。。。对于每个产品,当用户选择该产品时,我都会将按钮置于一个字段中,该字段可以添加更多的产品。 但当我点击每个按钮增加产品的数量,然后点击其他产品,数量不是从1开始 enter code here 分类回收器daptermain( } 我想当我点击与产品相关的按钮时,只需增加该产品的项目。。。 这张图片清楚地显示了我的问题 因为您对所有项目使用全局变量(num变量)。您应该向ModelProductMain模型添加新字

这是我的回收观点 我创建了一些产品,并使用recyclerview向他们展示。。。对于每个产品,当用户选择该产品时,我都会将按钮置于一个字段中,该字段可以添加更多的产品。 但当我点击每个按钮增加产品的数量,然后点击其他产品,数量不是从1开始

enter code here
分类回收器daptermain(

}

我想当我点击与产品相关的按钮时,只需增加该产品的项目。。。 这张图片清楚地显示了我的问题

因为您对所有项目使用全局变量(num变量)。您应该向ModelProductMain模型添加新字段,并在用户单击该项目的按钮时增加或减少该字段。

因为您对所有项目使用全局变量(num变量)。您应该向ModelProductMain模型添加新字段,并在用户单击该项目的按钮时增加或减少该字段。

您的欢迎,如果它对您有帮助,请将其标记为回答您的欢迎,如果它对您有帮助,请将其标记为回答
val product: ArrayList<ModelProductMain>
var num = 1

class ViewHolder(itemview: View) : RecyclerView.ViewHolder(itemview) {


    val title: TextView = itemview.product_txt
    val price: TextView = itemview.price_product
    val imageproduct: ImageView = itemview.product_image
    val rl_select_item = itemview.rl_section_additive_items
    val add: Button = itemview.btn_icon_add
    val amount: TextView = itemview.amount_value
    val btn_add_item: Button = itemview.button_add_product


}

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


    val layoutview =
        LayoutInflater.from(parent.context).inflate(R.layout.product_items, parent, false)
    return ViewHolder(layoutview)

}

override fun getItemCount() = product.size

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


    val products = product[position]
    holder.title.text = products.title
    holder.price.text = products.price.toString()
    Picasso.get().load(products.image).into(holder.imageproduct)



    holder.itemView.setOnClickListener {

        val bundle = Bundle()
        val myfragment = ItemDetailsfragment()
        myfragment.arguments = bundle


        val activity = it.context as AppCompatActivity
        activity.supportFragmentManager.beginTransaction()
            .replace(R.id.homepage, myfragment)
            .commit()


        bundle.putString("title", products.title)
        bundle.putString("price", products.price.toString())
        bundle.putString("image", products.image.toString())


    }

    holder.rl_select_item.visibility = View.GONE

    holder.add.setOnClickListener {

        holder.rl_select_item.visibility = View.VISIBLE
        holder.add.visibility = View.GONE

    }

    holder.btn_add_item.setOnClickListener {

        num += 1

        holder.amount.text = num.toString()

    }


}
enter code here