繁体   English   中英

Android:将数组保存到应用数据

[英]Android: Save array to app data

是否可以将整个数组(甚至是ArrayList)保存到android应用程序数据中?

据我所知,你只能做像putInt,putBoolean或putString这样的东西....但更复杂的数据类型呢? 有没有办法做到这一点?

或者我必须首先将整个数组转换为String,然后在加载时再次将其解析为数组?

用于复杂数据类型

            Bundle bundle = new Bundle();
            bundle.putSerializable("key", object);
            intent.putExtra("bundle", bundle);

编辑:或者用于阵列

   putStringArray(key,value);

我想你不知道还有像putFloatArray(key,Value),putStringArray(key,value)这样的函数。你可以使用那些。

如果“app data”是指SharedPreferences,那么不,您只能保存简单类型

但是,您可以通过Activities的onSaveInstanceState / onRestoreInstanceState保存应用程序状态,如下所述: 使用保存实例状态保存Android活动状态

请注意,这会保存每个Activity的状态,因此最好有一个主要活动来保存应用程序状态。

您可以序列化几乎任何形式的数据并将其另存为字节流byte[]

序列化后,存储:

putByteArray("key", serializedData);

你需要实现Parcelable。 您应该看看本教程跨活动传递ArrayList

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM