How to use a spinner inside a RecyclerView

2

I currently have a RecyclerView in which I want to add a kind of Spinner . I want my Spinner to show me a series of data but, I just want to see them, I do not want to let me select any. How can I deactivate them all so that they only show me the list? I have tried several examples and tutorials and there is no way, I think the problem comes from using a RecyclerView . I also need a default text to appear in Spinner , for example: list of items. I attach the code of my adapter , here is where I try all of the Spinner

    public class ProductDetailAdapter extends RecyclerView.Adapter<ProductDetailAdapter.ProductHolder> {
    private List<Purchases> items;
    Context context;
    public ProductDetailAdapter(List<Purchases> items, Context context, String lastActivity) {
        this.context = context;
        this.lastActivity = lastActivity;
        this.items = items;
    }


    @Override
    public ProductDetailAdapter.ProductHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        View v = LayoutInflater.from(parent.getContext())
                .inflate(R.layout.cardpurchasedetail, parent, false);
        return new ProductHolder(v);
    }

    @Override
    public void onBindViewHolder(ProductHolder holder, int position) {
        int spinnerPos = 0;
       // ArrayAdapter adapter =new ArrayAdapter<String>(this.context, android.R.layout.simple_spinner_item , items.get(position).getItemsnames());
       ArrayAdapter adapter =new ArrayAdapter<String>(this.context, android.R.layout.simple_spinner_item , items.get(position).getItemsnames()){
           @Override
           public boolean isEnabled(int position){
             return false;
           }

           @Override
           public View getDropDownView(int position, View convertView,
                                       ViewGroup parent) {
               View view = super.getDropDownView(position, convertView, parent);
               TextView tv = (TextView) view;
                   tv.setTextColor(Color.BLACK);
               return view;
           }
       };
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        holder.spinner.setAdapter(adapter);
        holder.spinner.setAdapter(
                new NothingSelectedSpinnerAdapter(
                        adapter,
                        R.layout.contact_spinner_row_nothing_selected,
                        this.context));
   }
    @Override
    public int getItemCount() {
        return items.size();
    }


    public class ProductHolder extends RecyclerView.ViewHolder {
        Spinner spinner;

        public ProductHolder(View v) {
            super(v);

            spinner = (Spinner)v.findViewById(R.id.spinner) ;

        }


    }

}

NothingSelectedSpinnerAdapter , from this way I could show a text in the title but, when I put the spinner disappears.

Thank you very much.

    
asked by garodev 06.10.2016 в 13:49
source

2 answers

0

I've already made it work! The problem was that I was showing the text of spinner blank and the background was white too, conclusion: I saw nothing. Now that I see them I know that the function works to see which element is selected and therefore I can not change the value of spinner ever. Therefore, what I had worked, I just had to change the xml that made reference to items of Spinner .

Thank you very much! : D

    
answered by 10.10.2016 / 13:10
source
-1

Well this tutorial could serve you, I'm sure.

pop-up recyclerview

    
answered by 06.10.2016 в 21:11