2012-12-07 37 views
1

我想要實現的目標,其加入某種嚮導的是這樣的:SharedPreferences與OnCreate中

應用程序啓動首次>用戶如下向導>嚮導的最後一步一些數據保存到SharedPreferences並繼續到用戶選擇的活動>應用程序退出>應用程序重新運行>應用程序顯示用戶通過SharedPreferences中的嚮導數據選擇的活動。

我知道我可以將數據保存到SharedPreferences空間,但我應該如何實現這一點。

用戶通過Android:OnClick動作看到一個視圖。 我的應用程序只與不同的視圖操作1個主Java類是這樣的:

public void myapp_confirmsetup(View view) { 
setContentView(R.layout.activity_my_app_confirmsetup); 
PreferenceManager.getDefaultSharedPreferences(this).edit().putString("MyApp", "app_off").commit();  
} 

我認爲,從現在開始,我只用OnCreate方法加載的字符串,但我不能確定我該怎麼做。 有人能把我推向正確的方向嗎?

+0

的可能重複[如何使用Android的getSharedPreferences ](http://stackoverflow.com/questions/5950043/how-to-use-gets-getsharedpreferences-in-android) – Dharmendra

+0

@Dharmendra不,這不是我不想保存登錄表單數據。 – user1839995

+0

你知道,而不是使用一個字符串..你更有意義的使用布爾,而不是字符串..「My_App_Status」和它的值可以是true或false ..爲什麼使用一個字符串,如果它的二進制答案反正...... – JoxTraex

回答

0
final SharedPreferences pref1 = getSharedPreferences("myapp", MODE_PRIVATE); 
    String str1= pref1.getString("Stringval", null); 
if(str1.equals("app_off")){ 
    //do something 
}else(str1.equals("app_on")){ 
    //do something else 
} 
+0

我認爲這是我想要的東西,這段代碼只給了我一個問題:java語法錯誤錯位結構 - 你知道爲什麼嗎? – user1839995

+0

也許如果你把它放在Create()? – vodich

+0

已經這樣做了,根據你的回答找到了另一種解決方案。謝謝! – user1839995

2

使用這種存儲字符串...

final SharedPreferences pref1 = getSharedPreferences("myapp", MODE_PRIVATE); 
    SharedPreferences.Editor editor = pref1.edit(); 
    editor.putString("Stringval", "xxxxxxx"); 
    editor.commit(); 

擺脫SharedPreference值,用下面的代碼: -

final SharedPreferences pref1 = getSharedPreferences("myapp", MODE_PRIVATE); 
String str1= pref2.getString("Stringval", null); 
+0

但我已經將數據存儲到SharedPreferences中如果我沒有弄錯(PreferenceManager.getDefaultSharedPreferences(this).edit()。putString(「MyApp」,「app_off」)。commit();)我在尋找就像是如果字符串然後加載view1否則如果字符串加載view2這可能嗎? – user1839995

+0

是的....你可以... –