используя кнопки переключения в приложении для Android

1

Я использую этот код для своего приложения для Android. но проблема в этом коде, что он отлично работает при установке на эмулятор. как только я попытаюсь установить это на своем мобильном устройстве, но при открытии приложения он отображает сообщение об ошибке, поскольку приложение не отвечает. И мне нужно использовать кнопки переключателя. Есть ли другой способ его использовать?

    switch1= (Switch) findViewById(R.id.switch1);

    switch1.setOnClickListener(new View.OnClickListener() 
    {
        public void onClick(View v) 
        {  
             if(switch1.getText().toString().equals("On"))
             {
                String message = "t030s005n123456";                 

                sendSMS(phoneNo, message);          
             }

             else if(switch1.getText().toString().equals("Off"))
             {
                String message = "notn123456";                 

                sendSMS(phoneNo, message);  
             }
        }
    });
  • 0
    В чем ошибка
  • 0
    Пожалуйста, вставьте логотип!
Показать ещё 7 комментариев
Теги:
android-widget

2 ответа

0

Вызовите sendSms() в новом потоке. Это просто быстрое решение.

new Thread(new Runnable() {
        @Override
        void run() {
            sendSms();
        }
    }
}).start();

В качестве альтернативы вам может потребоваться показать диалог выполнения и выполнить другие действия после завершения задачи отправки. В этом случае используйте AsyncTask. Google для хороших примеров.

0

switch1 = (Switch) findViewById (R.id.switch1);

Api levels lesser than 14 does not support your switch1 obj must be null.. 
place if(switch1!=null)
{
//click listener
}

Также убедитесь, что ваше устройство обновлено до уровня 14 уровня ICE_CREAM_SANDWICH.

Поскольку виджет переключателя находится от уровня 14 api.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню