Je crée des vues et j'ajoute ces vues à une présentation linéaire. Ces entrées sont extraites d'edittext en bas de l'écran comme une application de messagerie. Chaque fois que j'appuie sur le bouton 'done', il se déclenche et ajoute ce message à ce message linearlayout.Android, Admob/Adview prend | steals focus de edittext, Comment prévenir?
Le problème:
Quand je veux mettre adview entre ces messages par exemple entre chaque 10 message. Edittext perd le focus et cela entraîne la mise en page entière pour défiler vers le bas.
Ce que je veux:
EditText ne doit pas perdre le focus et chaque fois qu'il devrait être attente active pour la saisie avec le clavier ouvert.
Ce que j'ai essayé et 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;
}
Est-il possible possible d'empêcher adview de prendre le focus et se comporter comme une vue normale?
Merci.
d'essayer d'appeler EditText.requestFocus() après avoir ajouté des messages sur CLICK –
désolé, je oubliez de mentionner cela, j'ai également essayé de demander la mise au point à ce edittext, mais adview semble tellement gourmand de prendre la mise au point à chaque fois! –