Tôi muốn biết có thể lưu trữ mảng chuỗi trong SharedPreferences hay không. Trong ứng dụng của tôi tôi muốn, đặt tên để được lưu trữ. Tôi biết điều này có thể được thực hiện bằng cách sử dụng DB, tôi chỉ muốn biết liệu là nó có thể để lưu những người đặt tên là mảng của chuỗi trong SharedPreferences.Mảng chuỗi trong SharedPreferences
Trả lời
Bạn có thể lưu trữ bộ chuỗi bằng cách sử dụng SharedPreferences
trong API cấp 11 trở lên. Xem getStringSet()
và putStringSet()
ю
Ở cấp API trước 11 bạn có thể sử dụng một số loại hack. Ví dụ: nếu bạn cần lưu trữ chuỗi chuỗi dưới khóa "stringArray", bạn có thể lưu từng chuỗi từ mảng bằng cách sử dụng putString
và các phím "stringArray.1", "stringArray.2", v.v.
Không thể lưu trữ chúng dưới dạng mảng, nhưng bạn có thể ghép chúng, sau đó chia chúng khi tải, sử dụng StringTokenizer
. Tôi có thể giúp với một số mã, nếu điều này sẽ hữu ích cho bạn.
nhờ .., ya chắc chắn .. một số liên kết hoặc mã về vấn đề này sẽ thực sự hữu ích – Pravy
Trong tùy chọn được chia sẻ, bạn có thể lưu trữ dữ liệu như cặp giá trị khóa. Những gì tôi thường làm là để chèn tất cả các dữ liệu sau đó có được danh sách chính và lặp qua nó, thiết lập quan trọng như bất cứ điều gì độc đáo, có thể là số 1,2,3 vv
sử dụng
SharedPreference sp = bối cảnh. getSharedPreferences ("myPrefs", MODE_WORLD_READABLE); Bản đồ cài sẵnDataMap = sp.getAll();
sau đó lặp qua presetDataMap,
Iterator ITT = presetDataMap.keySet() iterator().
hy vọng điều này sẽ hữu ích.
Nếu bạn đang tìm kiếm StringTokenizer sau đó blog post 1 và blog post2 sẽ là hữu ích
cảm ơn vì liên kết – Pravy
nhờ .... i cảm thấy điều này chắc chắn là sẽ giúp đỡ me.But là cách tốt để lưu trữ các chuỗi, nói chung ?? tôi có nghĩa là lưu trữ tập hợp các chuỗi trong các sở thích được chia sẻ chứ không phải trong DB? – Pravy
Nếu bạn có một mảng nhỏ các chuỗi có thể dễ dàng hơn khi sử dụng 'SharedPrefernece'. Nhưng nếu bạn cần chuỗi lớn các chuỗi, tôi muốn nói DB là cách duy nhất để đi. Khó thực hiện và sử dụng hơn, nhưng nó sẽ hiệu quả hơn. – inazaruk
cảm ơn đề xuất của bạn và tôi thấy rằng SET, cấu trúc dữ liệu, không thể chứa các phần tử trùng lặp. nó có nghĩa là nó không thể chứa cùng một chuỗi nhiều hơn một lần ?? @inazaruk – Pravy