package com.example.myapplication import android.net.Uri import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import android.widget.ImageView import android.widget.TextView import androidx.recyclerview.widget.RecyclerView class RecipeAdapter( private val recipes: List<Recipe>, // Liste der Rezepte private val onRecipeClick: (Recipe) -> Unit // Callback für Klick auf ein Rezept ) : RecyclerView.Adapter<RecipeAdapter.ViewHolder>() { inner class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) { fun bind(recipe: Recipe) { val title = itemView.findViewById<TextView>(R.id.recipeTitle) val image = itemView.findViewById<ImageView>(R.id.recipeImage) // Rezeptdaten anzeigen title.text = recipe.name if (recipe.imageUri != null) { image.setImageURI(Uri.parse(recipe.imageUri)) } else { image.setImageResource(R.drawable.platzhalter) // Platzhalterbild } // Klick-Listener für das Rezept itemView.setOnClickListener { onRecipeClick(recipe) } } } override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder { val view = LayoutInflater.from(parent.context).inflate(R.layout.item_recipe, parent, false) return ViewHolder(view) } override fun onBindViewHolder(holder: ViewHolder, position: Int) { holder.bind(recipes[position]) } override fun getItemCount() = recipes.size // Gesamtanzahl der Rezepte }