0

Привет, я сказал, что я новичок в андроиде и языке в целом, я использовал SharedPreferences для хранения разных edittext, но теперь я хочу хранить чекбоксы, но я не знаю, как хранить эта ценность, я надеюсь, что кто-то может мне помочь.SharedPreferences CheckBox во фрагменте

общественного класса FiveFragment расширяет фрагмент {

EditText et133; 


CheckBox ch1; 


public FiveFragment() { 
    // Required empty public constructor 
} 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
} 


@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, 
         Bundle savedInstanceState) { 
    // Inflate the layout for this fragment 
    View view = inflater.inflate(R.layout.fragment_five, container, false); 

    SharedPreferences setting = this.getActivity().getSharedPreferences("PRESS", Context.MODE_PRIVATE); 

    et133 = (EditText) view.findViewById(R.id.editText); 

    ch1 = (CheckBox) view.findViewById(R.id.checkBox); 

// СЕЙЧАС ????

et133.setText(setting.getString("value133", "")); 



    return view; 

} 

public void onStop() { 
    super.onStop(); 
    if (et133.getText() != null) { 

     SharedPreferences setting = this.getActivity().getSharedPreferences("PRESS", 0); 
     SharedPreferences.Editor editor = setting.edit(); 
     editor.putString("value133", et133.getText().toString()); 

// Теперь ??? editor.apply();

} 
} 

}

ответ

0

Вы можете использовать слушатель или сделать это в методе onStop().

ch1.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { 
      @Override 
      public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { 
       setting.edit().putBoolean("checkbox", isChecked).apply(); 
      } 
     }); 

или в onStop()

setting.edit().putBoolean("checkbox", ch1.isChecked).apply(); 
+0

привет я попробовать, но не работать в любом случае. public void onStop() { super.onStop(); if (et133.getText()! = Null) { SharedPreferences setting = this.getActivity(). GetSharedPreferences ("PRESS", 0); SharedPreferences.Editor editor = setting.edit(); editor.putString ("value133", et133.getText(). ToString()); setting.edit(). PutBoolean ("checkbox", ch1.isChecked) .apply(); editor.apply(); } } –

0

Использование editor.commit() после putString(), то значения будут сохранены

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