1

データが正常に送信された後にアラート ダイアログ ボックスを開きたい。次のコードを使用していますが、機能しません。

     dialog = ProgressDialog.show(TanantDetails.this, "", "Please Wait...", true);
                new Thread(new Runnable() {
                       public void run() {
                String response;

             SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
                SharedPreferences sp=getSharedPreferences("login",MODE_WORLD_READABLE);
            try {
                 Utility utility=new Utility();
                // 

                 new_url=url+mobile_no.getText().toString();
                response = utility.getResponse(utility.urlEncode(new_url));
                dialog.dismiss();
                if (response.equals("Success"))
                {

                     AlertDialog alertbox = new AlertDialog.Builder(getBaseContext())
                        //.setIcon(R.drawable.no)
                        .setTitle("Submit successfully")
                        .setMessage("“Police will verify documents between preferred timing")
                        .setPositiveButton("ok", new DialogInterface.OnClickListener() {

                            // do something when the button is clicked
                            public void onClick(DialogInterface arg0, int arg1) {
                               TanantDetails.this.finish();
                                Intent i=new Intent(getApplicationContext(),MainActivity.class);
                                i.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
                                startActivity(i);

                            }
                        })
                          .show(); 


                }

            } catch (UnsupportedEncodingException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (ClientProtocolException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (Exception e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            // Toast.makeText(getApplicationContext(), response, Toast.LENGTH_LONG).show();
                       }
                 }).start();       


        }  

トーストはメッセージ応答の成功を表示します。

私はアンドロイドが初めてです

4

3 に答える 3

5

シンプルアラートダイアログ

AlertDialog.Builder builder = new AlertDialog.Builder(this);
                builder.setMessage("Alert")
                   .setTitle("Warning");

AlertDialog alert =builder.create();
                alert.show();

OKを追加したい場合は、ボタンをキャンセルしてから追加してください

builder.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
                       public void onClick(DialogInterface dialog, int id) {
                           // User clicked OK button
                    }
                   });

builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
                       public void onClick(DialogInterface dialog, int id) {
                           // User clicked cancel button
                       }
                   });
于 2013-05-17T07:43:52.347 に答える
1

このコードを試してください:

new AlertDialog.Builder(this)
.setTitle("Your title")
.setMessage("Your message")
.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
    public void onClick(DialogInterface dialog, int which) { 
        // Your code
    }
 })
.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
    public void onClick(DialogInterface dialog, int which) { 
        // do nothing
    }
 })
 .show();
于 2013-05-17T07:47:52.997 に答える
0

アラート ダイアログを UI スレッドに表示する必要があります。実行しているコードは別のスレッドにあります。ほとんどの場合、別のスレッドで UI 要素を更新する場合は、runOnUiThread() を使用して行われます。以下のコードを参照してください。

if (response.equals("Success"))

{

runOnUiThread(new Runnable() {
@Override

public void run() {

AlertDialog alertbox = new AlertDialog.Builder(getBaseContext())

//.setIcon(R.drawable.no)

.setTitle("Submit successfully")

.setMessage("“Police will verify documents between preferred timing")

.setPositiveButton("ok", new DialogInterface.OnClickListener() {


// do something when the button is clicked

public void onClick(DialogInterface arg0, int arg1) {

TanantDetails.this.finish();

Intent i=new Intent(getApplicationContext(),MainActivity.class);

i.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);

startActivity(i);

}

}).show(); 

}

});

}
于 2013-08-28T15:28:27.667 に答える