generic biçiminde Bundle nesnesinde yinelenen yardımcı yöntem oluşturmaya çalışıyorum. ByTüm Bundle nesnelerinde yineleme nasıl yapılır
"jenerik" Yani:
- parametre olarak geçirilen Bundle nesnelerin adlarını (tuşlar) bilmemiz gerekir vermez.
- Gelecekte başka bir üyenin (anahtarın) Bundle eklenmesi gerekmiyor.
Şimdiye kadar, bunu gerçekleştirmek için aşağıdaki anahat anlamaya:
private void bundleToSharedPreferences(Bundle bundle) {
Set<String> keys = bundle.keySet();
for (String key : keys) {
Object o = bundle.get(key);
if (o.getClass().getName().contentEquals("int")) {
// save ints
}
else if (o.getClass().getName().contentEquals("boolean")) {
// save booleans
}
else if (o.getClass().getName().contentEquals("String")) {
// save Strings
}
else {
// etc.
}
}
}
bu yaklaşım hiçbir şekilde anlam mı?
Bunu gerçekleştirmenin daha iyi bir yolu var mı?
Bu tasarımın herhangi bir anlam ifade etmediğini düşünüyorum.Tercihleriniz ve bir pakette gelenler, tercihe göre eşlenmesi gereken belirli anahtarlara sahip olduğunuzdan, her zaman pakete girmemelidir. Bunlar, kodlanmış olması gereken anahtarlarla tanımlanır. – JoxTraex
Sanırım haklısınız. Ama bir Bundle'u (yerel) kalıcı depolamaya kaydetmek için herhangi bir ** sane ** yolu var mı? – ateiob
Bir SQLite veritabanı kullanmaya çalışıyorum. – JoxTraex