Wie kann die Anzeige ein AdView bei jedem n-TEN position in einem listView

Habe ich den code unten, das funktioniert, außer es versteckt sich immer atleast ein echtes Element in der listview, da die Anzeige zeigt an dieser position.

Beispiel für das problem: ich habe eine Liste von 4 mal, und die adView ist die Anzeige auf der position 3. in der Listenansicht sehe ich nur 3 mal und das AdView, der 4. Punkt nicht angezeigt

Ich spielte mit der Erhöhung der Größe der adapter jedesmal, wenn ich wieder eine Anzeige, aber es funktionierte nicht sehr gut.

Irgendwelche Ideen?

public View getView(final int position, View row, ViewGroup parent) {
        MyHolder holder = null;
        boolean showAd = proVersion == false && (position % 8 == k);
        if (showAd) {
            AdView adView = adList.get(position);
            if (adView == null) {
                AdView adViewNew = new AdView((Activity) context, AdSize.BANNER, context.getResources().getString(
                        R.string.adId));
                adViewNew.loadAd(Utils.getAdRequest("gps", lat, lng, keywords));
                adList.add(position, adViewNew);
                return adViewNew;
            } else {
                return adView;
            }
        } else if (row == null || row instanceof AdView) {
            LayoutInflater inflater = ((SherlockActivity) context).getLayoutInflater();
            row = inflater.inflate(viewResourceId, parent, false);
            holder = new MyHolder();
            holder.textName = (TextView) row.findViewById(R.id.name);           
            row.setTag(holder);
        } else {
            holder = (MyHolder) row.getTag();
        }
        holder.textName.setText(items.get(position).getName());

        //more code

        return row;
    }

    @Override
    public int getCount() {
        if (items != null) {
            return items.size();
        } else {
            return 0;
        }
    }
  • AdMob-Politik - Anzahl der anzeigen pro Seite
  • nur eine Anzeige zeigt, zu einer Zeit, da beim scrollen der vorherigen Anzeige geht aus Sicht
  • Wiederaufnahme - das, Was Sie wollen, zu erreichen, ist immer X die Elemente auf dem Bildschirm und einer von Ihnen-immer mit dem ad?
  • Ich möchte eine Liste haben, wo ein ad view zeigt in jeder 8. Stelle. also bei position 8 und 16 usw. wenn ich dies mache, wird die Anzeige verbraucht die Elemente, die sind auf meiner Liste, die ich übergeben, um die array-adapter an diesen Positionen. also bei position 8 und 16, ich sehe die Anzeige, aber ich bin nicht zu sehen, was sein sollte, bei 8 und 16, wenn die Werbung nicht da waren. es muss nicht schieben Sie die Elemente nach unten, anstatt es über Sie schreibt
  • Sie erstellen die adView wenn showAd ist true. Vielleicht bin ich etwas fehlt, aber innerlich, dass if Zustand bist du nicht Umgang mit anderen View Verwandte Struktur, die Sie gerade aufblasen, das layout, wenn Sie nicht sind, zeigt die Anzeige (D. H., in der else - Anweisung), so dass es nicht overwritting Sie, aber es ist einfach nicht geschaffen.
  • wie über die Definition von zwei Arten von layouts für Ihre tableview? 1 Artikel, nur mit dem normalen Inhalt, und eins mit dem adview zusätzlich zu den üblichen Inhalten, jedoch würden Sie haben, um die Berührungen auf jene Zeilen, die anders als die anderen. Es könnte auch eine Option zum hinzufügen von Dummy-Einträge in der Datenquelle repräsentiert, die Anzeigen, dann können Sie mit diesen dummy-Einträge in getView entsprechend. scheint wie ein sauberer Ansatz
  • Ich würde für die adview in jedem Listenelement, sondern macht es nur sichtbar, wenn position 3

Schreibe einen Kommentar