package com.example.recyclerviewextension; import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.LinearLayout; import androidx.recyclerview.widget.RecyclerView; import com.google.appinventor.components.runtime.util.YailList; import com.google.appinventor.components.runtime.ComponentContainer; import java.util.List; import java.util.Map; /* @UsesLibraries(libraries = "cardview.jar") @UsesLibraries(libraries = "recyclerview-1.1.0.jar") @UsesLibraries(libraries = "core-1.3.2.jar")*/ public class RecyclerViewAdapter extends RecyclerView.Adapter { private final List> viewsList; private final LayoutInflater inflater; public RecyclerViewAdapter(Context context, List> viewsList) { this.viewsList = viewsList; this.inflater = LayoutInflater.from(context); } @Override public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View view = inflater.inflate(android.R.layout.simple_list_item_1, parent, false); return new ViewHolder(view); } @Override public void onBindViewHolder(ViewHolder holder, int position) { Map viewMap = viewsList.get(position); View view = viewMap.values().iterator().next(); holder.container.addView(view); } @Override public int getItemCount() { return viewsList.size(); } static class ViewHolder extends RecyclerView.ViewHolder { LinearLayout container; ViewHolder(View itemView) { super(itemView); container = itemView.findViewById(android.R.id.content); } } }