@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container,
@Nullable Bundle savedInstanceState) {
FrameLayout layout = (FrameLayout)inflater.inflate(R.layout.fragment_get_val2,
container, false);
Editsensor_Name[0] = (EditText) layout.findViewById(R.id.Editsensor1_Name);
Editsensor_Name[1] = (EditText) layout.findViewById(R.id.Editsensor2_Name);
Editsensor_Name[2] = (EditText) layout.findViewById(R.id.Editsensor3_Name);
Editsensor_Name[3] = (EditText) layout.findViewById(R.id.Editsensor4_Name);
Editsensor_Name[4] = (EditText) layout.findViewById(R.id.Editsensor5_Name);
Editsensor_Name[5] = (EditText) layout.findViewById(R.id.Editsensor6_Name);
Editsensor_Name[6] = (EditText) layout.findViewById(R.id.Editsensor7_Name);
Editsensor_Name[7] = (EditText) layout.findViewById(R.id.Editsensor8_Name);
for(int i = 0; i < Editsensor_Name.length; i++) {
//getSharedPreferences Edittext저장
SharedPreferences sf = this.getActivity().getSharedPreferences("sFile",MODE_PRIVATE);
Editsensor_Name[i].setText(sf.getString(String.valueOf(i),""));
}
return layout;
}
@Override
public void onStop() {
super.onStop();
for(int i = 0; i < Editsensor_Name.length; i++) {
// Activity가 종료되기 전에 저장한다.
//SharedPreferences를 sFile이름, 기본모드로 설정
SharedPreferences sharedPreferences = this.getActivity().getSharedPreferences("sFile", MODE_PRIVATE);
//저장을 하기위해 editor를 이용하여 값을 저장시켜준다.
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString(String.valueOf(i),Editsensor_Name[i].getText().toString());
// 사용자가 입력한 저장할 데이터
editor.commit();
}
}
이렇게 Edittext에 배열을 준 다음에 SharePreferences 를 이용하여 저장을 하려고하는데 아래의 사진처럼 가끔씩만 저장이 작동되고 대부분 저장기능이 잘 작동이 되지 않는데 뭐가 오류인지 알수있을까요??
