我正在一個項目中,我必須測試一些無線rssi值,我正在父母活動計算....但爲了測試,我創建了一個新的活動,通過按的按鈕。我想要的是從wifi掃描結果中獲得5-6個不同的值,並在測試活動中使用它們而不是一個?從父活動獲取更新值
我試過在5個不同的數組中獲取值並將它們傳遞給測試活動,但是在我的代碼中存在一些這種方法的複雜性。
任何人都可以給我一些建議,如何實現這一目標?
我正在一個項目中,我必須測試一些無線rssi值,我正在父母活動計算....但爲了測試,我創建了一個新的活動,通過按的按鈕。我想要的是從wifi掃描結果中獲得5-6個不同的值,並在測試活動中使用它們而不是一個?從父活動獲取更新值
我試過在5個不同的數組中獲取值並將它們傳遞給測試活動,但是在我的代碼中存在一些這種方法的複雜性。
任何人都可以給我一些建議,如何實現這一目標?
您可以使用Hashmap和SharedPreferences。
1 - 設置你的價值觀
Map<String, String> values = new HashMap<>();
values.put("key0", "value0");
values.put("key1", "value1");
values.put("key2", "value2");
SharedPreferences keyValues = this.getSharedPreferences("myPrefs", Context.MODE_PRIVATE);
SharedPreferences.Editor keyValuesEditor = keyValues.edit();
for (String s : values.keySet()) {
keyValuesEditor.putString(s, values.get(s));
}
keyValuesEditor.apply();
2 - 檢索值
SharedPreferences prefs = getSharedPreferences("myPrefs", MODE_PRIVATE);
String myValue = prefs.getString("key0", null);
好吧,但在這一次,我開始我的活動,我無法從父活動得到更新的價值..好嗎?就像我在包中添加字符串「hello」並開始我的活動有任何方式,如果在開始子活動後,如果該字符串的值更改爲「嗨」,我可以在不重新啓動子活動的情況下獲得它嗎? –
對不起,我讀了你的問題太快了......然後像別人告訴你的那樣,你最好使用SharedPreferences更新我的答案。 – Laurent
你在說什麼併發症?如果需要,您也可以使用sharedPreferences。 – Jimmy
你能告訴我更多關於sharedPreferences的信息嗎?我從來沒有使用過它們 –
你應該看看sharedPrefrences api。它基本上就像一個具有應用程序級別範圍的變量,通常用於存儲應用程序設置。您可以存儲任何內容,並從應用程序中的任何位置獲取它。 – Jimmy