Je crée des vues et j'ajoute ces vues à un affichage linéaire, ces entrées sont prises dans le texte d'édition au bas de l'écran comme dans une application de messagerie. Je suis en train de créer des vues et d'ajouter ces vues à une structure linéaire.
Le problème :
Quand je veux mettre une publicité entre ces messages, par exemple tous les 10 messages. L'Edittext perd le focus et cela fait défiler toute la mise en page vers le bas.
Ce que je veux :
Le texte d'édition ne doit pas perdre le focus et doit toujours être actif, en attente de saisie avec le clavier ouvert.
Ce que j'ai essayé et qui n'a pas fonctionné :
if (messageCounter % 10 == 0) {
LinearLayout advertisedMessageLayout = new LinearLayout(this);
advertisedMessageLayout.setOrientation(LinearLayout.VERTICAL);
advertisedMessageLayout.setLayoutParams(new LayoutParams(
LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT));
AdView av = new AdView(this, AdSize.BANNER, MBConstants.ADVIEW_ID);
//remove focus for every child of adview
for (int i = 0; i < av.getChildCount(); i++) {
av.getChildAt(i).setFocusable(false);
av.getChildAt(i).setFocusableInTouchMode(false);
av.getChildAt(i).setClickable(false);
}
av.setFocusable(false);
av.setFocusableInTouchMode(false);
av.setClickable(false);
av.setEnabled(false);
AdRequest request = new AdRequest();
av.loadAd(request);
advertisedMessageLayout.addView(messageRow);
advertisedMessageLayout.addView(av);
return advertisedMessageLayout;
}
Existe-t-il un moyen d'empêcher l'affichage d'une vue de prendre le focus et de se comporter comme une vue normale ?
Gracias.