2014-09-19 1 views
1

J'ai beaucoup lu sur ce sujet, mais rien ne fonctionne. J'ai pris le code suivant de développeurs Android:Afficher l'annonce admob en bas par programme

private AdView adView; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    addListenerOnButton(); 

    // Crear adView. 
    adView = new AdView(this); 
    adView.setAdUnitId("MY_UNIT_ID"); 
    adView.setAdSize(AdSize.BANNER); 

    // Buscar RelativeLayout suponiendo que se le ha asignado 
    // el atributo android:id="@+id/mainLayout". 
    RelativeLayout layout = (RelativeLayout)findViewById(R.id.activity_main); 

    // Añadirle adView. 
    layout.addView(adView); 

    // Iniciar una solicitud genérica. 
    AdRequest adRequest = new AdRequest.Builder().build(); 

    // Cargar adView con la solicitud de anuncio. 
    adView.loadAd(adRequest); 
    } 

@Override 
    public void onPause() { 
    adView.pause(); 
    super.onPause(); 
    } 

    @Override 
    public void onResume() { 
    super.onResume(); 
    adView.resume(); 
    } 

    @Override 
    public void onDestroy() { 
    adView.destroy(); 
    super.onDestroy(); 
    } 

Il montre l'annonce, mais il est pas au bas de l'écran. J'ai aussi essayé avec LayoutParams mais tout fonctionne. Des idées? Merci.

Répondre

0

Vous pouvez définir manuellement les coordonnées, annonce ce code:

@Override 
public void onWindowFocusChanged (boolean hasFocus) { 
    //get display height 
    DisplayMetrics displaymetrics = new DisplayMetrics(); 
    getWindowManager().getDefaultDisplay().getMetrics(displaymetrics); 
    int displayHeight = displaymetrics.heightPixels; 

    //get adView height 
    int adViewHeight = adView.getHeight(); 
    int viewStartX = displayHeight = adViewHeight; 
    adView.setX(viewStartX);  
} 

vous devriez obtenir la logique si le code est 100% J'écris avec mon téléphone

Questions connexes