2012-08-30 5 views
1

Je travaille sur l'application où je dois montrer Popup dans mon activité principale, en Pop up J'ai un bouton sur lequel j'ai besoin d'effectuer une opération.Événement OnClick sur la fenêtre popup dans Android

S'il vous plaît voir mon code ci-dessous. Le code ne donne pas d'erreur mais le bouton de la fenêtre contextuelle ne fonctionne pas.

imgOpenPopup = (ImageView) findViewById(R.id.places); 

     imgOpenPopup.setOnClickListener(new OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       LayoutInflater inflater = (LayoutInflater) ConvergeActivity.this 
         .getSystemService(Context.LAYOUT_INFLATER_SERVICE); 

       View popupView = inflater.inflate(R.layout.placepopup,(ViewGroup)findViewById(R.layout.maincam)); 

       popupWindow = new PopupWindow(inflater.inflate(
         R.layout.placepopup, null, false), 200, 265, true); 

       popupWindow.showAtLocation(findViewById(R.id.places), 
         Gravity.CENTER, 0, 0); 


       objbtnpopupOk=(Button)popupView.findViewById(R.id.btnokpopup); 

       objbtnpopupOk.setOnClickListener(new OnClickListener() 
       { 
        @Override 
        public void onClick(View v) 
        { 
         Toast.makeText(getApplicationContext(), " hi thrtrt " ,Toast.LENGTH_LONG).show(); 
        } 
      }); 

      } 
     }); 
+0

Essayez d'appeler popupWindow.showAtLocation ... après objbtnpopupOk.setOnClickListener ... – Pasha

+0

Aucun travail n'a pas fonctionné pour moi. – kendrelaxman

Répondre

0

essayer de lever la création d'une fenêtre pop-up de la OnClickListener, et onClick il suffit d'appeler la méthode pour afficher la fenêtre pop-up. Il a quelques améliorations d'optimisation et il peut résoudre votre problème.

0

Pourquoi vous essayez de ne pas utiliser AlertDialog. Cela aidera you.Read cette Alert Dialog

0

Est-ce que le menu contextuel dans une autre activité:

Ajouter ce thème au fichier styles, puis mettez-le à l'activité que vous voulez faire apparaître dans le fichier manifeste. Je suis sûr que le bouton fonctionnera dans une autre activité.

<resources> 
<style name="Theme.Transparent" parent="android:Theme"> 
    <item name="android:windowIsTranslucent">true</item> 
    <item name="android:windowBackground">@android:color/transparent</item> 
    <item name="android:windowContentOverlay">@null</item> 
    <item name="android:windowNoTitle">true</item> 
    <item name="android:windowIsFloating">true</item> 
    <item name="android:backgroundDimEnabled">false</item> 
</style> 

+0

Ce n'est pas ce dont j'avais besoin. Je avais besoin Popup wiondow et ont besoin d'accéder aux commandes ou vues de cette fenêtre Popup – kendrelaxman

3

Essayez ceci:

View popupView = inflater.inflate(R.layout.placepopup,(ViewGroup)findViewById(R.layout.maincam)); 
popupWindow = new PopupWindow(popupView, 200, 265, true); 

place ceci:

View popupView = inflater.inflate(R.layout.placepopup,(ViewGroup)findViewById(R.layout.maincam)); 
popupWindow = new PopupWindow(inflater.inflate(R.layout.placepopup, null, false), 200, 265, true); 
+0

aucun bouton ne reçoit pas cliqué. quel est le problème que je ne vraiment pas Undetrstand – kendrelaxman

0

Je l'ai fait de cette façon:

popupWindow.getContentView().setOnClickListener(new OnClickListener()...); 

J'espère que cela aide.

Questions connexes