문제 setOnClickListener 코 틀린 Androidx를 사용 recyclerView에서 새로운 활동을 표시

jackpower2 :

보기를 클릭하고 각 소유자의 값이 반환 될 때 내가 디버거에서 것을 볼 수 있습니다, 오류를 반환하지 않습니다. 그냥 새로운 활동이 표시되지 않습니다. someone`more 내 문제에서 코 틀린 점을 사용하여 경험 할 수 있습니까?

------어댑터-------

package org.wit.grubmobileapp

class RestaurantAdapter(val context: Context, var restaurants: List<YelpRestaurant>):
    RecyclerView.Adapter<RestaurantAdapter.ViewHolder>() {

    inner class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
        fun bind(restaurant: YelpRestaurant) {
            itemView.tvName.text = restaurant.name
            itemView.ratingBar.rating = restaurant.rating.toFloat()
            itemView.tvReviews.text = "${restaurant.numReviews} Reviews"
            itemView.tvAddress.text = restaurant.location.address
            itemView.tvCategory.text = restaurant.categories[0].title
            itemView.tvPrice.text = restaurant.price
            Glide.with(context).load(restaurant.imageUrl).into(itemView.imageView)
        }
    }

    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
        return ViewHolder(LayoutInflater.from(context).inflate(R.layout.item_restaurant, parent, false))
    }

    override fun getItemCount() =
        restaurants.size

    override fun onBindViewHolder(holder: ViewHolder, position: Int) {
        val restaurant = restaurants[position]
        holder.bind(restaurant)

        holder.itemView.setOnClickListener{
            val model = restaurants.get(position)

            var rName : String = model.name
            var rPrice : String = model.price
            var rCategory : String = model.categories[0].title
            var rLocation : String = model.location.address

            val intent = Intent(context, RestaurantActivity::class.java)

            intent.putExtra("iName", rName)
            intent.putExtra("iPrice", rPrice)
            intent.putExtra("iCategory", rCategory)
            intent.putExtra("iLocation", rLocation)

            context.startActivity(intent)
        }
    }

    fun updateList(list: MutableList<YelpRestaurant>) {
        restaurants = list
        notifyDataSetChanged()
    }
}

-----활동-------

package org.wit.grubmobileapp

class RestaurantActivity : AppCompatActivity() {

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

        var intent = intent

        val aName = intent.getStringExtra("iName")
        val aPrice = intent.getStringExtra("iPrice")
        val aCategory = intent.getStringExtra("iCategory")
        val aLocation = intent.getStringExtra("iLocation")

        r_name.text = aName
        r_price.text = aPrice
        r_category.text = aCategory
        r_address.text = aLocation

        startActivity(intent)
    }
}
최대 :

이 라인 startActivity(intent)에서는 RestaurantActivity없을 것이다.

이 시도 할 수 있습니다 :

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

val aName = intent.getStringExtra("iName")
val aPrice = intent.getStringExtra("iPrice")
val aCategory = intent.getStringExtra("iCategory")
val aLocation = intent.getStringExtra("iLocation")

r_name.text = aName
r_price.text = aPrice
r_category.text = aCategory
r_address.text = aLocation

}

추천

출처http://10.200.1.11:23101/article/api/json?id=398995&siteId=1