我读过有关从活动传递数组和向活动传递数组的帖子,但我对如何针对我的具体情况执行此操作感到困惑。
我有一个名为 DaysWeather 的对象数组(DaysWeather[] 数组),其中对象具有多个字符串属性以及位图属性。我在某处读到,你必须使其可序列化或可解析或其他东西,但乍一看似乎很混乱。
有人能引导我走向正确的方向吗?
有没有一种简单的方法可以做到这一点?
你的对象需要实现可打包接口 http://developer.android.com/reference/android/os/Parcelable.html.
完成后,您可以创建 Parcelable 数组并将其传递给活动:
// We assume we have an array: DaysWeather[] input;
Parcelable[] output = new Parcelable[input.length];
for (int i=input.length-1; i>=0; --i) {
output[i] = input[i];
}
Intent i = new Intent(...);
i.putExtra("myArray", output);
另请注意,当您实现 Parcelable 接口时,不要序列化完整的重对象。例如,对于您的位图,仅序列化资源 ID,并在膨胀时从资源 ID 重新创建位图。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)