private void DisplayData(object result) { //Debug.Log("Displaying data"); string json = ((WWW)result).text; //Debug.Log(json); try // deserialize { PhotosSearchResponse response = (PhotosSearchResponse)JsonReader.Deserialize(json, typeof(PhotosSearchResponse)); if (response.Stat != "ok") { Alert.Show("Error", response.Message, AlertButtonFlag.Ok); return; } var count = 0; // load images response.Photos.Photo.ForEach(delegate(Photo photo) { var data = new PhotoData(photo.Title) { ImageUrl = photo.GetUrl(ImageSize) }; _dataProvider.AddItemAt(data, count); // add it to the beginning off the list // load thumbnails asynchronously, then update each item _thumbnailLoader.Load(photo.GetUrl(ThumbnailSize), delegate(Texture texture) { data.Thumbnail = texture; _dataProvider.ItemUpdated(data, "Thumbnail", null, texture); }); count++; }); } catch (Exception) { Alert.Show("Error", "No images found", AlertButtonFlag.Ok); } }