我試圖將用戶條目存儲到EditText字段中,但是當我退出應用程序時,它不會出現。Android:SharedPreferences。如何正確實施它們
因此,例如,在他/她的名字,用戶類型,然後退出應用程序。當用戶返回並啓動應用程序時,用戶名稱出現在EditText字段中。不過,我無法得到這個工作。我相信它與sharedPreferences有關,但我不確定我要出錯的地方。
我很新的Android和Java的,所以尋找這相當困難。任何幫助將非常感激。
public class MainActivity extends Activity {
public final static String EXTRA_FROM = "com.example.assignment1.FROM";
@Override
protected void onSaveInstanceState(Bundle outState)
{
super.onSaveInstanceState(outState);
EditText emailFrom =(EditText) findViewById(R.id.editEmailFrom);
String from = emailFrom.getText().toString();
outState.putString(EXTRA_FROM, from);
}
@Override
protected void onRestoreInstanceState(Bundle savedState)
{
EditText emailFrom =(EditText) findViewById(R.id.editEmailFrom);
String from = savedState.getString(EXTRA_FROM);
emailFrom.setText(from);
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
public void emailSend (View sendButton)
{
Intent intent = new Intent(this,DisplayEmailActivity.class);
EditText emailFrom =(EditText) findViewById(R.id.editEmailFrom);
String from = emailFrom.getText().toString();
intent.putExtra(EXTRA_FROM,from);
SharedPreferences saveFrom = getSharedPreferences(EXTRA_FROM, MODE_PRIVATE);
Editor editor = saveFrom.edit();
editor.putString(EXTRA_FROM, from);
editor.commit();
String storedfrom = saveFrom.getString(EXTRA_FROM, from);
emailFrom.setText(storedfrom);
startActivity(intent);
}
次活動
public class DisplayEmailActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_display_email);
Intent intent = getIntent();
String from = intent.getStringExtra(MainActivity.EXTRA_FROM);
TextView textFrom =(TextView)findViewById(R.id.displayEmailFrom);
textFrom.setText(from);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_display_email, menu);
return true;
}
你想實現究竟是什麼? SharedPreferences用於存儲一些數據,以便下次啓動應用程序時可以訪問。 –
谷歌搜索它...你最好在網上找到一些示例代碼,而不是在這裏問一個令人難以置信的普遍問題。 –
我的目標是當用戶退出應用程序時,進入表單的條目仍然可以在EditText字段中看到。因此,例如在「FROM」格式中,當用戶再次啓動應用程序時,用戶名「TOM」將被存儲在EditText字段中。 – Calgar99