2014-07-30 4 views
-3

Когда я меняю swith на включение или выключение, я хочу вызвать этот метод checkswitch.Метод переключения Android не работает

У меня есть код:

int swflag=0; 
public void checkswitch(View view) 
{ 
    Switch sw =(Switch)findViewById(R.id.switch1); 

    if(sw.isChecked()) 
     swflag=1; 
    else 
     swflag=0; 
} 

Но это doen't работу, потому что флаг не меняется, это, вероятно, потому, что я использую OnClick в XML. Я использую андроид-студию.

Кто-нибудь может мне помочь? Благодарю.

+2

Пожалуйста, объясните ** полностью и точно **, что «не работают не знаю, почему? " означает. – CommonsWare

+0

Какой тип cdk вы используете? пожалуйста, напишите catLog, если у вас есть и отправьте xml плюс код –

+0

'У меня есть этот код:' Нет, у вас есть 'больше', чем это. –

ответ

0
package com.example.testing; 
import android.app.Activity; 
import android.os.Bundle; 
import android.util.Log; 
import android.widget.CompoundButton; 
import android.widget.CompoundButton.OnCheckedChangeListener; 
import android.widget.Switch; 
public class SwitchTesting extends Activity 
{ 
    int swflag=0; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) 
    { 
     // TODO Auto-generated method stub 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.switch_widget_sample); 

     Switch swichObj = (Switch) findViewById(R.id.switch1); 
     swichObj.setOnCheckedChangeListener(new OnCheckedChangeListener() 
     { 
      @Override 
      public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) 
      { 
       // TODO Auto-generated method stub 
       if(isChecked) 
       { 
        swflag = 1; 
       } 
       else 
       { 
        swflag = 0; 
       } 
       Log.d("swflag Value = ", Integer.toString(swflag)); 
      } 
     }); 
    } 
} 

Это работает для меня. Переключатель Виджет будет на API Имеющийся уровень 14 и выше

+0

Хорошо, спасибо за код, работает на 100%, и спасибо всем, кто пытается мне помочь. И код: // // TODO автогенерируемый метод заглушает его просто комментарий? потому что цвет синий –

+0

благодарит Rushabh Patel за форматирование кода. Извините, что удалить TODO Comment.if означает, что работает код. Голосуйте за него. – VegeOSplash

+0

Y, я забыл проголосовать. –

0

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

tgl_switch.setOnClickListener(new OnClickListener(){ 

     @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 
      if(tgl_switch.isChecked()){ 

       // Your Code Here 
       Toast.makeText(getApplicationContext(), "Switch ON", 
         Toast.LENGTH_SHORT).show(); 

      }else{ 


       // else part 
       Toast.makeText(getApplicationContext(), "Switch off", 
          Toast.LENGTH_SHORT).show(); 
      } 
     }}); 
+0

Не хочу, но спасибо. –

Смежные вопросы