2016-08-24 2 views
0

안녕하세요 누구나 내가 그 텍스트를 저장 한 후 저장된 텍스트를 얻을 수 있다고 말 할 수 있습니다. 그 텍스트를 저장하면 텍스트가 편집 텍스트에 항상 표시됩니다. 감사합니다.공유 환경 설정에서 편집 텍스트의 데이터를 다시 얻는 방법은 무엇입니까?

public class MainActivity extends AppCompatActivity { 

    private Toolbar toolbar; 
    private EditText inputName; 
    private TextInputLayout inputLayoutName; 
    private Button btnSave; 

    public static final String MyPREFERENCES = "MyPrefs" ; 
    public static final String Message = "nameKey"; 
    SharedPreferences sharedpreferences; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     toolbar = (Toolbar) findViewById(R.id.toolbar); 
     setSupportActionBar(toolbar); 

     inputLayoutName = (TextInputLayout) findViewById(R.id.input_layout_name); 
     inputName = (EditText) findViewById(R.id.input_message); 
     btnSave = (Button) findViewById(R.id.btn_save); 

     inputName.addTextChangedListener(new MyTextWatcher(inputName)); 
     sharedpreferences = getSharedPreferences(MyPREFERENCES, Context.MODE_PRIVATE); 
     btnSave.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 
       String m = inputName.getText().toString(); 
       SharedPreferences.Editor editor = sharedpreferences.edit(); 

       editor.putString(Message, m); 
       editor.apply(); 
       Toast.makeText(getApplicationContext(), "Thank You!", Toast.LENGTH_SHORT).show(); 
      } 
     }); 
    } 
+0

당신이 좀 더 명확 해주십시오 만들 수보십시오 : 여기 내 코드? 텍스트는 키보드에서 명시 적으로 제거하지 않는 한 EditText에 남아 있습니다. 당신의 요구가 정확히 무엇입니까? 당신은 활동들 사이를 이동하고 텍스트가 EditText에서 자동으로 채워져 관련 활동으로 가고 있다고 예상합니까? –

+0

'inputText.setText (sharedpreferences.getString (Message, ""));' – lionscribe

답변

2
inputName.setText(sharedpreferences.getString(Message, "default_value")); 
0

이이

btnSave.setOnClickListener(new View.OnClickListener() { 
       @Override 
       public void onClick(View view) { 
        String m = inputName.getText().toString(); 
        SharedPreferences.Editor editor = sharedpreferences.edit(); 

        editor.putString(Message, m); 
        editor.apply(); 
        Toast.makeText(getApplicationContext(), "Thank You!", Toast.LENGTH_SHORT).show(); 
        inputName.setText(m, TextView.BufferType.EDITABLE); //set the text here 
       } 
      }); 
관련 문제