Je travaille sur une application dans laquelle j'affiche un ContextMenu
. Maintenant, quand l'un des éléments de menu dans ce ContextMenu
est pressé, je voudrais afficher un PopupWindow
. J'ai trouvé quelques exemples de comment utiliser PopupWindow
sur Internet mais j'ai toujours un problème. J'ai le code suivant:PopupView.showAtLocation est indéfini pour le type Voir
LayoutInflater layoutInflater = (LayoutInflater) getBaseContext().getSystemService(LAYOUT_INFLATER_SERVICE);
View popupView = layoutInflater.inflate(R.layout.popup, null);
final PopupWindow popupWindow = new PopupWindow(popupView, LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
popupView.showAtLocation(this.findViewById(R.id.main_layout), Gravity.CENTER, 0, 0);
Et dans le fichier XML de l'activité:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/main_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="#232323" >
....
</RelativeLayout>
Je pensais que cela devrait fonctionner, mais je reçois le message d'erreur suivant:
« La méthode showAtLocation (View, int, int, int) n'est pas défini pour le type Affichage "
Qu'est-ce que cela signifie? Je donne une vue et trois entiers à showAtLocation, n'est-ce pas? Donc quel est le problème? Avez-vous des idées?
Wow merci pour la réponse rapide! Stupide que je n'ai pas vu moi-même :). – Zero