2016-03-25 3 views
0

Ich habe versucht, das benutzerdefinierte Layout in der OnBindViewHolder Recyclerview aufzublasen. Ich könnte das Layout aufblasen und fügen Sie die Ansicht mit For-Schleife erfolgreich zu der LinearLayout, die die Viewgroup der Recyclerview-Element ist, aber ich kann nicht die Werte auf die TextViews des aufgeblähten Layout festlegen. Hier ist, was ich bisher versucht habe. Jeder kleine Hinweis wäre hilfreich.OnBindViewHolder

@Override 
public void onBindViewHolder(ParentViewHolder holder, int position) { 

    holder.title.setText(dataModels.get(position).getTopic()); 

    listModels = dataModels.get(position).getBreakingAndLatestNewsListModels(); 

    View.OnClickListener myListener = new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      String tag = (String) v.getTag(); 
      Toast.makeText(context, listModels.get(Integer.parseInt(tag)).getTitle(), Toast.LENGTH_SHORT).show(); 
     } 
    }; 

    for (int i = 0; i < listModels.size(); i++) { 
     View v = inflater.inflate(R.layout.news_content_layout, holder.containerLayout, false); 
     v.setTag(i + ""); 
     holder.containerLayout.addView(v); 
     v.setOnClickListener(myListener); 

     TextView titleTextView = (TextView) v.findViewById(R.id.news_title_text_view); 
     titleTextView.setText("jst testing"); 

    } 


} 

Der alternative Weg ich this auch versucht, aber wieder ist es eine andere ploblem in Auf- und Zuklappen der Symbolleiste

+0

Warum möchten Sie in onBindViewHolder aufblasen? Laut Dokumentation sollte dies in onCreateViewHolder erfolgen. Das Aufblasen von onBindViewHolder ist sehr schlechtes Design. Es wird Ihre RecyclerView Laggy und ungeschickt machen. –

+0

Da ich mehr als einen Artikel im Recyclerview-Artikel habe (d. H. Übergeordnete Recyclerview-Artikel haben mehrere Artikel), habe ich das Layout mit loop aufgebläht und diese dem recyclingview-Artikel hinzugefügt. –

+0

gibt es eine andere Möglichkeit, dies zu tun? In meinem Fall brauche ich eine Recycler-Ansicht innerhalb des Recyclerview-Elements. Ich habe es auch so versucht. aber es gibt ein Problem beim Erweitern und Zusammenklappen der Symbolleiste https://stackoverflow.com/questions/36214230/collapsingtoolbarlayout-no-expanding-when-pulling-recyclerview –

Antwort

0

ich auf Expand a RecyclerView lesen würde. Es gibt eine SO Post @Expandable list with RecyclerView?.

Ich weiß nicht viel darüber. Die Idee ist, dass Sie die wichtigsten Elemente in RecyclerView erweitern/reduzieren möchten. Die obige Webseite verwendet Animationen zum Erweitern/Reduzieren von Objekten.

0

Wenn Sie eine Scroll-Recycler-Ansicht in einem Recycler anzeigen möchten, ist dies nicht möglich, da in diesem Fall ein Bildlaufkonflikt und eine App zum Absturz kommen. Sie können horizontal scrollende Recycler-Ansicht verwenden eine vertikal scrollende Recycler-Ansicht. Ich schlage vor, dass Sie für Lineares Layout gehen, wenn Sie das Verhalten erreichen möchten, das Sie implementieren möchten.