joe*_*ich 7 android bundle android-activity
我已经阅读了关于从活动传递数组的帖子,但我对于如何针对我的具体情况这样做感到困惑.
我有一个名为DaysWeather(DaysWeather []数组)的对象数组,其中对象具有多个String属性以及位图属性.我在某个地方看到你必须把它变成可序列化的或可以用的东西,但乍一看似乎很乱.
有人能引导我朝着正确的方向前进吗?
有一个简单的方法吗?
您的对象需要实现Parcelable接口.
完成此操作后,您可以创建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);
Run Code Online (Sandbox Code Playgroud)
另请注意,在实现Parcelable接口时,请不要序列化完整的重物.例如,对于您的位图,仅序列化ressource ID,并在充气时,从ressource ID重新创建位图.