Firebaseを使い始めましたが、これまでのところ私はそれが好きです。しかし、今私はトッピングしています - ストレージから画像をダウンロードしようとしています。しかし、私はバックグラウンドで画像をダウンロードしたくないので、直接ダウンロードしたいと思います。 Firebaseはストレージから直接画像をダウンロードします
for (NSInteger iLoop=0; iLoop<aFriendsKey.count; iLoop++) {
NSDictionary *dicFriend = [dicFriends objectForKey:[aFriendsKey objectAtIndex:iLoop]];
FIRStorage *storage = [FIRStorage storage];
FIRStorageReference *storageRef = [storage referenceForURL:[dicFriend objectForKey:@"avatarURL"]];
// Download in memory with a maximum allowed size of 1MB (1 * 1024 * 1024 bytes)
[storageRef dataWithMaxSize:5 * 1024 * 1024 completion:^(NSData *data, NSError *error){
if (error != nil) {
// Uh-oh, an error occurred!
} else {
[aFriendsAvatar addObject:data];
}
}];
}
[_tvFriends reloadData];
をし、それが正常に動作しますが、画像は私がのUITableViewをリロードするとき、彼らは利用できないことを意味し、時間内にダウンロードされません。
これまでのところ私がテストしています。前のコードから分かるように、NSMutableArray内のすべてのイメージをロードし、このNSMutableArrayを使用してイメージをUITableViewに表示しようとしています。
バックグラウンドダウンロードとreloadDataの間の遅延のため、決してイメージは表示されません。
アイデアや解決策はありますか?
パトリック:素晴らしい。まさに私が探していたものでした。完璧に動作します! –
@DietmarSchwarzWebersよろしくお願いします。このソリューションはあなたのために働いて以来、私の答えのチェックマークをクリックしてそれを受け入れられた答えとしてマークします。お役に立てて嬉しいです! –