정수 값을 가진 배열이 있습니다. 그것은 시간이 지남에 따라 자랄 것입니다. 대략 50 개의 값을가집니다. 배열을 지속적으로 저장하려고하므로 sharedpreferences에 저장하려고 생각했습니다. 복잡한 유형을 저장할 수 없다는 것을 알고 있지만 배열을 직렬화하고 sharedpreferences에 저장하는 것에 대해서도 들었습니다. 누군가가 나에게 힌트 또는 더 나은 샘플 코드를 제공 할 수 있습니까?sharedpreferences에 배열 저장
답변
하지만이 작업이 완료 얻을 것이다 :
SharedPreferences prefs = ...;
final int count = 50;
final String KEY_COUNT = "COUNT";
final String KEY_VAL_PREFIX = "VAL_";
int values[] = new int[count];
/*
* ... put some stuff in values[] ...
*/
final Editor sped = prefs.edit();
sped.putInt(KEY_COUNT, count);
for (int i = 0; i < count; i++)
{
sped.putInt(KEY_VAL_PREFIX + i, values[i]);
}
sped.commit();
그런 다음 나중에는
values2[i] = getInt(KEY_VAL_PREFIX + i, 0)
전화로 빈 배열을 채우는의 환경 설정에서 KEY_COUNT 값을 잡는하여 이러한 값을 검색 할 수 있습니다.
: 다음을 참조 할 수도 있습니다. 이것으로 나를 도와주세요. http : //stackoverflow.com/questions/9209673/using-preferences-my-listview-is-empty-cant-store-data – George
방금 한 번 해보았습니다. – Josh
@Josh는 getter와 setter에 대한 전체 코드를 포함 할 수 있습니까? – HeartlessArchangel
ObjectSerializer를 사용하여이를 수행 할 수 있습니다. 여기에 어떻게해야하는지에 대한 논의가 있습니다. Store Shared preferences
배열을 쉼표로 구분 된 값 문자열로 변환합니다. 그런 다음 문자열을 단일 키 - 값 쌍으로 저장하십시오.
그런 다음 배열을 추출하려면 간단히 split 함수를 사용하여 문자열을 쉼표 구분 기호를 기반으로 배열 요소로 분할하십시오.
- 1. SharedPreferences에 문자열 배열 저장
- 2. sharedPreferences에 저장
- 3. 번들을 SharedPreferences에 저장
- 4. Spinner 선택을 SharedPreferences에 저장
- 5. 사용자 지정 DialogPreference에서 SharedPreferences에 저장
- 6. Android : JSON 데이터를 SharedPreferences에 저장
- 7. json을 사용하여 sharedpreferences에 데이터를 저장합니다.
- 8. 모든 활동에 액세스 할 수있는 SharedPreferences에 데이터 저장
- 9. datepicker를 sharedpreferences에 저장하는 방법
- 10. 컨텍스트없이 SharedPreferences에 액세스
- 11. 환경 설정을 SharedPreferences에 저장하지 않으려면 어떻게해야하나요?
- 12. 글꼴 크기가 SharedPreferences에 저장되지 않습니다.
- 13. radiogroup의 selectedindex를 sharedpreferences에 저장하는 방법
- 14. INT를 SharedPreferences에 저장할 수없는 이유는 무엇입니까?
- 15. cakephp 저장 배열
- 16. 데이터베이스에 큰 배열 저장
- 17. Solr에 배열 저장
- 18. 활동 내에서 배열 저장
- 19. 안드로이드 저장 문자열 배열
- 20. 크롬 확장에 배열 저장
- 21. 문자열 배열 저장 시간
- 22. 배열 위치 저장
- 23. SQLite의 배열 저장
- 24. 저장 사전을 많이하고 배열
- 25. 아이폰에 문자 배열 저장
- 26. sqlite : 배열 저장 하시겠습니까?
- 27. 디스크에 배열 저장
- 28. mySQL에 큰 배열 저장
- 29. 데이터베이스에 배열 저장
- 30. ABRecordRef의 배열 저장
이 [답변] (http://stackoverflow.com/questions/7175880/how-can-i-store-an-integer-array-in-sharedpreferences) –