2017-02-19 3 views
0

Dies ist mein Code für RecyclerView:Wie erstellt man eine Anzeige in RecyclerView?

public RecyclerGameAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { 
View v = null; 
if (viewType == AD_VIEW_TYPE) {} 
else{ 
    v = LayoutInflater.from(parent.getContext()).inflate(
          R.layout.recyclerview_games, parent, false); 
    ViewHolder viewHolder = new ViewHolder(v); 
    return viewHolder;  
} 

Ich weiß nicht, wie das Teil zu erklären, dass ich bin die AdView in RecyclerAdapter zeigt.

Können Sie mir helfen?

Antwort

2

Sie möchten den Artikeltyp der RecyclerView überprüfen und dann entsprechend handeln. Die Verwendung, die @Override Methode,

@Override 
public int getItemViewType(int position) 
{ 
    if (position % 5 == 0){ 
     return AD_TYPE; 
    }else{ 
     return CONTENT_TYPE; 
    } 
} 

Dann können Sie den Inhalt oder die Anzeige auf das Element in onCreateViewHolder binden.

View view = null; 

if (viewType == AD_TYPE) 
{ 
    view = new AdView(activity, AdSize.BANNER, ADMOB_ID); 
    float density = activity.getResources().getDisplayMetrics().density; 
    int height = Math.round(AdSize.BANNER.getHeight() * density); 
    AbsListView.LayoutParams params = new AbsListView.LayoutParams(AbsListView.LayoutParams.FILL_PARENT,height); 
    view.setLayoutParams(params); 
    view.loadAd(new AdRequest()); 
} 
else{ 
    view = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.list_item_layout, viewGroup, false); 
} 

RecyclerView.ViewHolder viewHolder = new RecyclerView.ViewHolder(view); 
return viewHolder; 

Dies sollte die Aufgabe erledigen.

Überprüfen Sie auch, this thread und this thread für mehr Eingänge. Ähnliche Fragen wie deine. Der zweite ist genau eine Kopie von dir. Fand es nach Beantwortung Ihrer Frage.

Verwandte Themen