Turkcell | Geleceği Yazanlar

Soru & Cevap

Sms Gönderme sırasında progressdialog ?

05.03.2014 - 14:10

Merhaba arkadaşlar.SMSManager sınıfını kullanarak mesaj gönderme esnasında progressdiaglog göstermek istiyorum hatta gösteriyorum lakin sms gönderme tamamlandıktan sonra hala dialog ekranda kalıyor.Nasıl çözebilirim.Teşekkürler

3892 Görüntülenme

4 Cevap

Kemal Selim Tekinarslan
05.03.2014 - 22:02

Ertuğrul arkadaşında dediği gibi işlemi AsynTask içine alırsan hallolur.

Sitede yorum yapabilmek için giriş yapın ya da üye olun.

Ertuğrul ÇAĞLAR
05.03.2014 - 18:12

O şekilde çalışmaz ama dostum, bu işlemi ya ayrı bir Thread açarak yapacaksın ya da tavsiyem olarak AsyncTask olarak yapacaksın. Kaldı ki, bu tarz işlemleri kesimlikle async olarak yaptırın, bir işlem esnasında uygulamanın kitleniyor gibi gözükmesi, kullanıcı deneyimi açısından büyük tehlikedir. 

Bir örnek yazdım ama, Notepad++ da yazdım, grammerde hata olabilir sen düzeltirsin.

[code]

private class SendSMS extends AsyncTask<String, Void, String> {

        ProgressDialog pd = new ProgressDialog();

        @Override
        protected String doInBackground(String... params) {
        
            SmsManager smsManager = SmsManager.getDefault();
            smsManager.sendTextMessage(TelNo, null, Mesaj, null, null);
            
            return "ok";
        }

        @Override
        protected void onPostExecute(String result) {
            
            pd.dismiss();

        }

        @Override
        protected void onPreExecute() {
            pd.show(Main.this, "In progress", "Loading");
        }

        @Override
        protected void onProgressUpdate(Void... values) {}
    }

[/code]

 

Kullanım şekli de,

[code]SendSMS sendSMS = new SendSMS();
    sendSMS.execute("");[/code]

Sitede yorum yapabilmek için giriş yapın ya da üye olun.

Sertunc SELEN
05.03.2014 - 17:49

ProgressDialog.show(Main.this, "In progress", "Loading");

SmsManager smsManager = SmsManager.getDefault();
smsManager.sendTextMessage(TelNo, null, Mesaj, null, null);

progressDialog.dismiss();

bu şekilde hiç görünmüyo ama dismisi commentlersem görünüyor ama hiç kaybolmuyor.

esasen smsManager Complete gibi bi eventi olsa orda dismis etmek gerek diye düşünüyorum 

Sitede yorum yapabilmek için giriş yapın ya da üye olun.

Kemal Selim Tekinarslan
05.03.2014 - 15:19

Selam,

kullandığın dialog kodunu yazarsan cevaplayabilirim. Muhmetelen dialog.dismiss(); işini görecektir.

Sitede yorum yapabilmek için giriş yapın ya da üye olun.

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.