2011-01-16 14 views
0

Ich habe eine App mit einer Quickaction angezeigt, sobald eine Taste gedrückt wird. Die quickaction zeigt ein Popup wie in der Gallery 3D-Anwendung für Android, und wenn eine Aktion angeklickt wird, versuche ich einen Dialog zu zeigen, aber ich erhalte ein erzwungenes Schließen. Debug in Eclipse zeigt auf die slideDialog.show(); Linie, aber ich brauche das, um den Dialog zu zeigen, oder? Hier ist ein Beispiel für eine dieser schnellen Aktionen/Dialoge.Start Dialog von QuickAction Button

letzte ActionItem dritte = neue ActionItem();

third.setTitle ("Pinselbreite anpassen");

third.setIcon (getResources(). GetDrawable (R.drawable.arrow_up));

third.setOnClickListener(new OnClickListener() { 

@Override

public void onClick (Blick v) {

slideDialog = new slideDialog(getApplicationContext()); 

    slideDialog.show(); 

slideDialog.setOnDismissListener(new OnDismissListener() { 

@Override 

public void onDismiss(DialogInterface dialog) { 

    mPaint.setStrokeWidth(slideDialog.getSize()); 
} 
     }); } }); 

Antwort

1

Ich habe einen hinterhältigen Verdacht, dass getApplicationContext() nicht den richtigen Kontext für Ihre Notwendigkeit der Rückkehr .... Haben Sie versucht, Classname.this in slideDialog zu übergeben ... dh sildeDialog = new slideDialog(Classname.this) wo ist Klassenname der Name der Klasse, in der Sie gerade schreiben?

+0

Ich habe diesen SlideDialog bereits in der gleichen Klasse durch den OnCreateMenu Zeug verwendet, erzwingt nur Schließen, wenn ich versuche, den gleichen Code von einer QuickAction ausführen. Ist das möglich? –

+0

Ich habe den hinterhältigen Verdacht, dass getApplicationContext() nicht den richtigen Kontext für Ihre Bedürfnisse zurückgibt .... haben Sie versucht, Classname.this in slideDialog zu übergeben ... dh sildeDialog = new slideDialog (Classname.this) wo Classname ist Name der Klasse, in der du gerade schreibst? –

+0

Was wissen Sie? Es funktionierte! Ich habe es den classenname.this anstelle von getApplicationContext() gesendet und es funktionierte wie es sollte. Vielen Dank! –

Verwandte Themen