0

私は2つのフラグメントを作成しました。 2番目のフラグメントには複数のedittextが含まれています。 SharedPreferenceは正常に機能しますが、最後の編集テキストでのみ動作します。残りの部分は、何も保存しません。最後に、edittextに書き込んだ後、再び保存して実行すると、アプリは以前に保存された日付を表示します。Sharedpreferencesフラグメント

EditText et; 

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

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

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, 
         Bundle savedInstanceState) { 

    View view = inflater.inflate(R.layout.fragment_two, container, false); 

    et =(EditText) view.findViewById(R.id.strength_score); 
    et =(EditText) view.findViewById(R.id.strength_modif); 
    et =(EditText) view.findViewById(R.id.strength_tem_scor); 
    et =(EditText) view.findViewById(R.id.strength_tem_modi); 


    SharedPreferences setting = this.getActivity().getSharedPreferences("PRESS", Context.MODE_PRIVATE); 
    et.setText(setting.getString("value", "")); 




    // Inflate the layout for this fragment 
    return view; 
} 

public void onStop(){ 
    super.onStop(); 
    if(et.getText() != null) { 
     SharedPreferences setting = this.getActivity().getSharedPreferences("PRESS", 0); 
     SharedPreferences.Editor editor = setting.edit(); 
     editor.putString("value", et.getText().toString()); 
     editor.commit(); 
    } 
    } 
} 

ありがとうございました。

+0

を使用すると、同じ名前を持つ4 edittextsを持って、最終的に、あなたは最後のものだけのテキストを変更しますか..? – DAVIDBALAS1

+0

異なるEditTextに異なるオブジェクトを使用する必要があります。 – NarendraJi

+0

EventBusを使用して、2つのフラグメント間、またはアクティビティとフラグメント間の通信を試みましたか? – DJO

答えて

1

は次のように行います -

EditText et,et1,et2,et3; 

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

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

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, 
         Bundle savedInstanceState) { 

    View view = inflater.inflate(R.layout.fragment_two, container, false); 

    et =(EditText) view.findViewById(R.id.strength_score); 
    et1 =(EditText) view.findViewById(R.id.strength_modif); 
    et2 =(EditText) view.findViewById(R.id.strength_tem_scor); 
    et3 =(EditText) view.findViewById(R.id.strength_tem_modi); 


    SharedPreferences setting = this.getActivity().getSharedPreferences("PRESS", Context.MODE_PRIVATE); 
    et.setText(setting.getString("value", "")); 
    et1.setText(setting.getString("value1", "")); 
    et2.setText(setting.getString("value2", "")); 
    et3.setText(setting.getString("value3", "")); 




    // Inflate the layout for this fragment 
    return view; 
} 

public void onStop(){ 
    super.onStop(); 
    if(et.getText() != null) { 
     SharedPreferences setting = this.getActivity().getSharedPreferences("PRESS", 0); 
     SharedPreferences.Editor editor = setting.edit(); 
     editor.putString("value", et.getText().toString()); 
     editor.putString("value1", et1.getText().toString()); 
     editor.putString("value2", et2.getText().toString()); 
     editor.putString("value3", et3.getText().toString()); 
     editor.commit(); 
    } 
    } 
} 
+0

ありがとうございます。 –

+0

@LuigiDeSimoneそれがうまくいけば、また受け入れてください:) – NarendraJi

関連する問題