J'ai vue qui commence d'abord comme celui-ci dans le xml:Android: Comment définir par programmation longclickable d'une vue à true tout en gardant son false cliquable?
<ImageButton
android:layout_width="64dp"
android:layout_height="64dp"
android:id="@+id/likeBtn"
android:src="@drawable/like"
android:onClick="like"
android:longClickable="true"
android:clickable="true" />
et j'ai déjà un setOnLongClickListenter dans le OnCreate de MainActivity, comme ceci:
likeBtn.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
showExtraLike(v);
return true;
}
});
Mon problème est:
quand je lance un code comme ça
likeBtn.setClickable(false);
likeBtn.setLongClickable(false);
/* some other code here */
likeBtn.setLongClickable(true);
J'ai trouvé que la vue devient aussi cliquable !!
J'ai besoin pour être SEULEMENT LongClickable et PAS cliquable pendant quelque temps que je vais à nouveau les deux après activer quelques lignes dans le code.
Notes:
- les deux et les désactivation permettant fonctionne à nouveau bien.
- La désactivation de LongClick uniquement et son activation fonctionnent à nouveau correctement.
- Mon seul problème est que le paramètre clickable to false semble inefficace quand longClickable est vrai!
s'il vous plaît poster votre activité ici – sushildlh
vous définissez longclickable à vrai sur certains événements? –
Dites-nous la situation lorsque vous voulez définir true et quand false –