Мое приложение имеет две вкладки и переключение между вкладками, заставляет меня потерять все, что я вхожу в Текущая поездка Итак, я изменил свой код, чтобы сохранить состояние.Сохранение экземпляра, чтобы избежать потери переключения данных между вкладкой
package com.test.testing;
public class Trip2 extends Fragment {
EditText nameOfInf;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
if ((savedInstanceState != null) && (savedInstanceState.getString("nameof") != null)) {
Toast.makeText(getActivity(), savedInstanceState.getString("nameof"),2000).show();
}
else {
Toast.makeText(getActivity(), "DIDNT SAVE",2000).show();
}
final RelativeLayout mFrame2 = (RelativeLayout) inflater.inflate(R.layout.trip, container, false);
final Button btnCalc = (Button) mFrame2.findViewById(R.id.btnCalculate);
nameOfInf = (EditText) mFrame2.findViewById(R.id.etName);
final EditText tollAmount = (EditText) mFrame2.findViewById(R.id.etToll);
btnCalc.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
//DO SOMETHING
}
});
return mFrame2;
}
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putString("nameof", nameOfInf.toString());
}
}
Он всегда показывает
не экономили
Как исправить эту проблему?
Вы попробовали [setRetainInstance()] (http://developer.android.com/reference/android/app/Fragment.html#setRetainInstance (boolean))? Таким образом вам не нужно будет управлять сохранением и восстановлением состояния. –
Много полезной информации здесь http://stackoverflow.com/q/151777/1316346 –