0

次のコードを使用して、アクティビティに [OK] ボタンのある AlertDialog があります。

         alertDialog = new AlertDialog.Builder(getApplicationContext()).create();

        //Setting Dialog Title
        alertDialog.setTitle("Alert Dialog");

        // Setting Dialog Message
        alertDialog.setMessage("Welcome to AndroidHive.info");

        // Setting Icon to Dialog
        alertDialog.setIcon(R.drawable.icon);



        // Setting OK Button
        alertDialog.setButton("OK", new DialogInterface.OnClickListener() {

            public void onClick(DialogInterface dialog, int which) {
    // Write your code here to execute after dialog closed  
    }
    });

        alertDialog.show();

これはアプリケーション内では問題なく動作しますが、アプリケーションの外にいてもこれを実行して表示したいと考えています。もちろん、アプリケーションはまだ実行されており、閉じられていません。トーストによく似ています。OKボタン付きのToastが使えても嬉しいです。

どんな助けでも大歓迎です。ありがとう。

4

1 に答える 1

0

ダイアログをスタンドアロンとして実行することはできません。ダイアログを表示するには、Activity を取得する必要があります。私の考えでは、すべてのアプリが必要なときにいつでもモーダル ダイアログを起動できるとしたら、あなたのソリューションはユーザー エクスペリエンスの低下につながります。

しかし、次の 2 つの解決策を想像できます。

  • 特定のインテントがシステムに送信されたときに、このダイアログを開いた状態でアクティビティを起動します (おそらく、アクティビティを透明にすることができます)。
  • 通知を使用すると、やりたいこととかなり近くなります。
于 2012-04-07T22:34:01.760 に答える