Şimdi Ara

Android RecyclerView Icerik Aralarına Reklam Yerleştirme

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir (1 Mobil) - 1 Masaüstü1 Mobil
5 sn
1
Cevap
0
Favori
250
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Yapmak istediğim çoğu uygulamada olan liste elemanların arasına reklam yerleştirme işlemidir.Örneğim mackolik mobil uygulaması ya da resimli gösteriyim;
    Android RecyclerView Icerik Aralarına Reklam Yerleştirme
    İnternette örnekleri var denedim reklam koyma işlemini gerçekleştiriyorum. Ancak yukarıdaki örnekten yola çıkarsam Item 10 elemanın göstermiyor. O indexi atlıyor. İtem 11 den devam ediyor. Şöyle de bir örneklendirme yapabilirim.

    İçerik1
    Reklam
    İçerik2
    İçerik3
    İçerik4
    Reklam
    içerik5
    içerik6

    olması gerekiyor. Ancak benim aldığım sonuç;
    İçerik1
    Reklam
    İçerik3
    içerik4
    Reklam
    içerik6

    Kodlarımda şu şekilde. Hata olabilecek yerleri koyuyorum.
     

    public class Adapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
    List<Content> contents = Collections.emptyList();
    private Activity activity;
    private static final int TYPE_ITEM = 1;
    private static final int TYPE_AD = 2;

    public Adapter(Activity activity, List<Content> contents) {
    this.activity = activity;
    this.contents = contents;
    }

    public static class MyViewHolder extends RecyclerView.ViewHolder {
    public TextView tv_baslik, tv_icerik, tv_tarih;
    //
    //

    public MyViewHolder(View itemView) {
    super(itemView);
    tv_baslik = (TextView) itemView.findViewById(R.id.tv_baslik);
    tv_icerik = (TextView) itemView.findViewById(R.id.tv_icerik);
    tv_tarih = (TextView) itemView.findViewById(R.id.tv_tarih);
    //
    //

    }
    }

    public static class ViewHolderAd extends RecyclerView.ViewHolder {
    public AdView adView;

    public ViewHolderAd(View itemView) {
    super(itemView);
    adView = (AdView) itemView.findViewById(R.id.adViewCat);
    }
    }

    @Override
    public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    switch (viewType){
    case TYPE_AD:
    View adview=LayoutInflater.from(parent.getContext()).inflate(R.layout.banner_admob,parent,false);
    return new ViewHolderAd(adview);
    case TYPE_ITEM:
    default:
    View itemview=LayoutInflater.from(parent.getContext()).inflate(R.layout.custom_list_item,parent,false);
    return new MyViewHolder(itemview);
    }
    }

    @Override
    public void onBindViewHolder(final RecyclerView.ViewHolder holder,final int position) {
    int viewType=getItemViewType(position);
    switch (viewType){

    case TYPE_AD:
    ViewHolderAd viewHolderAd = (ViewHolderAd) holder;
    AdRequest adRequest = new AdRequest.Builder()
    .addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
    .addTestDevice("AAAA6E7352A8A93AC9FC2157FF2F3C")
    .build();
    viewHolderAd.adView.loadAd(adRequest);
    Log.d("position",""+position);
    break;

    case TYPE_ITEM:
    default:
    final MyViewHolder viewHolder = (MyViewHolder) holder;
    Log.d("position1",""+position);
    viewHolder.tv_baslik.setText(contents.get(position).getBaslik());
    viewHolder.tv_icerik.setText(Html.fromHtml(contents.get(position).getIcerik()));
    viewHolder.tv_tarih.setText(contents.get(position).getTarih());
    break;
    }

    }

    @Override
    public int getItemViewType(int position) {
    return (position % 4 == 0) ? TYPE_AD : TYPE_ITEM;
    }

    @Override
    public int getItemCount() {

    return contents.size();
    }

    }



    Piyasadaki örneklere bakıyorum bu sorun çoğunda var. Teşekkürler



    < Bu mesaj bu kişi tarafından değiştirildi Maroon On -- 31 Ocak 2017; 2:12:23 >







  • Yapay Zeka’dan İlgili Konular
    Daha Fazla Göster
    
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.