Dès que la mise en page est créée, je veux qu'une touche soit cliquée automatiquement et que j'utilise Le problème est que cela ne fonctionne pas. On dirait que je ne peux pas faire cela au cours de la méthode Ceci P> bouton.performclick () code> pour cela.
Oncreate, Onstart, OnResume Code>. A quel moment est le bouton et ses événements créés, je peux donc effectuer un clic sur celui-ci? P>
@Override
protected void onResume() {
super.onResume();
mybutton.performClick();
}
4 Réponses :
Vous devez utiliser un ViewTeeobserver :
ViewTreeObserver vto = mybutton.getViewTreeObserver(); vto.addOnGlobalLayoutListener(new OnGlobalLayoutListener() { @Override public void onGlobalLayout() { vto.removeOnGlobalLayoutListener(this); mybutton.performClick(); } });
Ce serait un bon choix dans ma situation si je vais tester cela sur des appareils avec API> 16
Ceci a fonctionné pour moi dans un cas similaire: de cette façon, le bouton exécutable ne fonctionnera que si le bouton est déjà chargé sur la mise en page. P> P>
J'aime le message runnable mais il s'avère que l'OP le faisait mal-.-
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.mylayout); myButton = (Button) findViewById(R.id.myButton); myButton.setOnClickListener(this); } @Override public void onStart() { myButton.performClick(); } @Override public void onClick(View v) { // DO STUFF }
drôle qu'il pose une question ayant la réponse dans la question :)
Qu'est-ce que je sens, semble que vous oubliez d'ajouter OnClickListner À votre avis, j'ai testé votre façon de fonctionner, J'ai fait quelque chose comme ci-dessous:
Définir le bouton de définition globalement dans BTN; code> p>
Oncreate () code> p>
@Override
protected void onResume() {
btn.performClick();
super.onResume();
}
Oui, j'avais Setontouchlistener au lieu de Setonclicklistener. Merci
Regardez ma réponse Stackoverflow.com/questions/14706886/...
Êtes-vous sûr que faire
setContentView () code>,
figueById () code>,
SETONClickListener () code> et
PerformClick () code> ne travail? Je suis juste curieux!
Ils travaillent. Le bouton n'est tout simplement pas cliqué, mais je n'ai aucune erreur