2015-05-30 2 views
-2

Я делаю приложение для управления 8 реле. Точка в том, что я новичок в программировании, а код показывает все типы ошибок при использовании более чем двух кнопок переключения. Надеюсь, что ниже будет отправлена ​​желаемая команда моему ардуину, когда переключатель включен/выключен. но как я могу использовать if/else, когда есть много переключателей (скажем, в моем случае 4), и мне также нужно сохранять последние состояния, когда я закрываю приложение или использую приложение на другом устройстве. угадать его много, чтобы спросить.Несколько кнопок переключения android issue

toggleButton.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     if (toggleButton.isChecked()) { 
      commandArduino(" "); 
    Toast.makeText(getApplicationContext(), "led2",Toast.LENGTH_LONG).show(); 
     } else { 
      commandArduino(" "); 
    Toast.makeText(getApplicationContext(), "led2",Toast.LENGTH_LONG).show(); 
     } 
    } 
}); 
+0

Что ваша проблема ?? Есть кнопки-переключатели не работают ?? –

+0

Я могу использовать условия для одного переключения, но что, если есть много переключателей ..., пожалуйста, несите меня, поскольку я новичок в этом. это должно быть хромым ask.toggleButton.setOnClickListener (новый View.OnClickListener() { @Override общественного недействительными OnClick (View v) { если (toggleButton.isChecked()) { commandArduino (»«); \t Toast.makeText (getApplicationContext(), "LED2", Toast.LENGTH_LONG) .show();} еще { commandArduino (»«); \t Toast.makeText (getApplicationContext(), "LED2", Toast.LENGTH_LONG) .show(); } } }); –

+0

@ BharatKumar .. Я буду полностью пытаться помочь вам ... Но я не понимаю, что вы на самом деле хотите ... Вы хотите выполнить разные действия для каждого переключения? –

ответ

0

Пожалуйста, найдите ниже solution..It будет выполнима для вас

public class Example extends Activity implements OnClickListener { 

private ToggleButton button2; 
private ToggleButton button1; 
private ToggleButton button3; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    // TODO Auto-generated method stub 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.example); 
    button1 = (ToggleButton) findViewById(R.id.toggleButton1); 
    button2 = (ToggleButton) findViewById(R.id.toggleButton2); 
    button3 = (ToggleButton) findViewById(R.id.togglebutton3); 

    button1.setOnClickListener(this); 
    button2.setOnClickListener(this); 
    button3.setOnClickListener(this); 


} 

@Override 
public void onClick(View v) { 
    // TODO Auto-generated method stub 
    switch (v.getId()) { 
    case R.id.toggleButton1: 
     if(button1.isChecked()) 
     { 
      button1.setChecked(true); 

      Toast.makeText(Example.this, "BUTTON1 UNCHECKED", Toast.LENGTH_LONG).show(); 

     } 
     else 
     { 
      button1.setChecked(false); 
      Toast.makeText(Example.this, "BUTTON1 CHECKED", Toast.LENGTH_LONG).show(); 
     } 



     break; 
    case R.id.toggleButton2: 
     if(button2.isChecked()) 
     { 
      button2.setChecked(true); 
      Toast.makeText(Example.this, "BUTTON2 UNCHECKED", Toast.LENGTH_LONG).show(); 

     } 
     else 
     { 
      button2.setChecked(false); 
      Toast.makeText(Example.this, "BUTTON2 CHECKED", Toast.LENGTH_LONG).show(); 
     } 

     break; 
    case R.id.togglebutton3: 
     if(button3.isChecked()) 
     { 
      button3.setChecked(true); 
      Toast.makeText(Example.this, "BUTTON3 UNCHECKED", Toast.LENGTH_LONG).show(); 

     } 
     else 
     { 
      button3.setChecked(false); 
      Toast.makeText(Example.this, "BUTTON3 CHECKED", Toast.LENGTH_LONG).show(); 
     } 

     break; 

    default: 
     break; 
    } 
    } 
}