2016-12-23 5 views
0

я поставил ToggleButton с ID ToggleButtonИзменить состояние ToggleButton программно

и я с помощью кода ниже, чтобы проверить, если он включен или выключен

public void toggleClick(View view){ 

boolean on = ((ToggleButton) view).isChecked(); 
if(on){ 

}else{ 

} 

} 

Все отлично работает .. Я пытаюсь измените состояние кнопки переключения, я пробовал много кодов через интернет, но ни один из них не меняет состояние переключения.

Я попытался это:

ToggleButton toggleButtons; 
toggleButtons = (ToggleButton) findViewById(R.id.toggleButton); //In onCreate 
toggleButtons.setChecked(false); 

любые идеи, пожалуйста?

ответ

0

Используйте setChecked(boolean checked) пример:

toggleButtons.setChecked(true) 
-1

В результате я использовал функцию Toggle с помощью ImageButton. Код ниже работает нормально.

* 

private ImageButton ib; 
    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
    //...... 
       ib = (ImageButton) rootView.findViewById(R.id.imagefavouriteButton); 
       if (checkFavorite()) { 
        ib.setImageDrawable(ContextCompat.getDrawable(getContext(), R.drawable.fav_on)); 
       } else { 
        ib.setImageDrawable(ContextCompat.getDrawable(getContext(), R.drawable.fav_off)); 
       } 
       ib.setOnClickListener(new View.OnClickListener() { 
        @Override 
        public void onClick(View v) { 
         if (checkFavorite()) { 
          remFromFav(); 
         } else { 
          addFavorites(); 
         } 
        } 
       }); 
    //..... 
} 
    private boolean checkFavorite(){// code to check in db} 
    public void addFavorites() { 
     ib.setImageDrawable(ContextCompat.getDrawable(getContext(), R.drawable.fav_on)); 
     Toast.makeText(getActivity(), "Added ...", Toast.LENGTH_SHORT).show(); 
    } 
    public void remFromFav() { 
     ib.setImageDrawable(ContextCompat.getDrawable(getContext(), R.drawable.fav_off)); 
     Toast.makeText(getActivity(), "Removed ...", Toast.LENGTH_SHORT).show(); 
    } 

Надеюсь, это вам поможет.