2011-01-16 13 views
0

ボタンを押すとクイックアクションが表示されるアプリがあります。このquickactionは、アンドロイド用のGallery 3Dアプリケーションのようなポップアップを表示し、アクションがクリックされると、ダイアログを表示しようとしますが、強制終了を受け取ります。 EclipseのDebugは、slideDialog.show()をポイントします。私はダイアログを表示する必要があります、そうですか?これらのクイックアクション/ダイアログの例を以下に示します。クイックアクションボタンからダイアログを開始

final ActionItem third = new ActionItem();

third.setTitle( "Adjust Brush Width");

third.setIcon(getResources()。getDrawable(R.drawable.arrow_up));

third.setOnClickListener(new OnClickListener() { 

@Override

ます。public void onClickの(ビューV){

slideDialog = new slideDialog(getApplicationContext()); 

    slideDialog.show(); 

slideDialog.setOnDismissListener(new OnDismissListener() { 

@Override 

public void onDismiss(DialogInterface dialog) { 

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

答えて

1

私はgetApplicationContext()があなたの必要性のための右のコンテキストを返していないことを卑劣な疑いを持っている.... Classname.thisslideDialogに渡そうとしましたか?すなわちsildeDialog = new slideDialog(Classname.this)ここで、Classnameはあなたが現在書いているクラスの名前ですか?

+0

このクラスのSlideDialogは、OnCreateMenuの同じクラスですでに使用されていますが、QuickActionから同じコードを実行しようとすると強制的に終了します。これは可能ですか? –

+0

getApplicationContext()があなたのニーズに合った正しいContextを返さないという疑惑があります。Classname.thisをslideDialogに渡してみましたか?つまり、sildeDialog = new slideDialog(Classname.this)あなたが現在書いているクラスの名前? –

+0

何を知っている!出来た!私はgetApplicationContext()の代わりにclassname.thisを送って、それが正常に動作するようにしました。ありがとうございました! –

関連する問題