2017-02-19 68 views
0

Это мой код для RecyclerView:Как создать объявление в 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;  
} 

Я не знаю, как объявить ту часть, которая I'm с указанием AdView в RecyclerAdapter.

Вы можете мне помочь?

ответ

2

Вы хотите проверить тип товара RecyclerView и затем действовать соответствующим образом. Используйте метод @Override,

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

Затем вы можете связать содержание или объявление к элементу в onCreateViewHolder.

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; 

Это должно выполнить эту работу.

Также проверьте, this thread и this thread для большего количества входов. Похожие вопросы, как у вас. Второй - это ваша копия. Нашел его после ответа на ваш вопрос.

 Смежные вопросы

  • Нет связанных вопросов^_^