private async void LoadData() { try { DataStories = JsonConvert.DeserializeObject <FetchStoriesObject.Data>(Intent.GetStringExtra("DataItem")); if (DataStories != null) { GlideImageLoader.LoadImage(this, DataStories.Avatar, UserImageView, ImageStyle.CircleCrop, ImagePlaceholders.Drawable); UsernameTextView.Text = DataStories.Name; DeleteIconView.Visibility = DataStories.Owner ? ViewStates.Visible : ViewStates.Invisible; int count = DataStories.Stories.Count; StoriesProgress.Visibility = ViewStates.Visible; StoriesProgress.SetStoriesCount(count); // <- set stories StoriesProgress.SetStoriesListener(this); // <- set listener //StoriesProgress.SetStoryDuration(10000L); // <- set a story duration FetchStoriesObject.Story fistStory = DataStories.Stories.FirstOrDefault(); if (fistStory != null) { StoriesProgress.SetStoriesCountWithDurations(DataStories.DurationsList.ToArray()); await SetStory(fistStory); StoriesProgress.StartStories(); // <- start progress } } } catch (Exception e) { Console.WriteLine(e); } }
private async Task SetStory(FetchStoriesObject.Story story) { try { StoryId = story.Id.ToString(); LastSeenTextView.Text = Methods.Time.ReplaceTime(story.TimeText); if (string.IsNullOrEmpty(story.Caption) || string.IsNullOrWhiteSpace(story.Caption)) { StoryaboutLayout.Visibility = ViewStates.Gone; } else { StoryaboutLayout.Visibility = ViewStates.Visible; CaptionStoryTextView.Text = Methods.FunString.DecodeString(story.Caption); } MediaFile = story.MediaFile; if (StoryVideoView == null) { InitVideoView(); } var type = Methods.AttachmentFiles.Check_FileExtension(MediaFile); if (type == "Video") { //Show a progress //RunOnUiThread(() => { try { AndHUD.Shared.Show(this, GetText(Resource.String.Lbl_Loading)); }catch (Exception e) { Console.WriteLine(e); } }); var fileName = MediaFile.Split('/').Last(); MediaFile = AppTools.GetFile(DateTime.Now.Day.ToString(), Methods.Path.FolderDiskStory, fileName, MediaFile); StoryImageView.Visibility = ViewStates.Gone; StoryVideoView.Visibility = ViewStates.Visible; if (MediaFile.Contains("http")) { StoryVideoView.SetVideoURI(Uri.Parse(MediaFile)); StoryVideoView.Start(); } else { var file = Uri.FromFile(new File(MediaFile)); StoryVideoView.SetVideoPath(file.Path); StoryVideoView.Start(); } await Task.Delay(500); } else { StoryImageView.Visibility = ViewStates.Visible; StoryVideoView.Visibility = ViewStates.Gone; Glide.With(this).Load(story.MediaFile).Apply(new RequestOptions()).Into(StoryImageView); // GlideImageLoader.LoadImage(this,story.MediaFile, StoryImageView, ImageStyle.CenterCrop, ImagePlaceholders.Drawable); } } catch (Exception e) { Console.WriteLine(e); } }