private async void DoLoadDrawable(ContentControl contentControl) { _lottieDrawable = new LottieDrawable(); contentControl.Content = _lottieDrawable; // var xurl = // "https://raw.githubusercontent.com/wintb/lottie-example/master/LottieSample/src/androidTest/assets/LightBulb.json"; // string s; // using (WebClient client = new WebClient()) // { // s = client.DownloadString(xurl); // } var assets = AvaloniaLocator.Current.GetService <IAssetLoader>(); var getstr = assets.Open(new Uri("avares://Avalonia.Lottie.Sample/Assets/Gears.json")); var a = await new StreamReader(getstr).ReadToEndAsync(); var res = await LottieCompositionFactory.FromJsonString(a, "cache1"); if (res is not null) { _lottieDrawable.SetComposition(res.Value); // _lottieDrawable.DirectScale = 0.45f; _lottieDrawable.RepeatCount = Int32.MaxValue; _lottieDrawable.Scale = 1f; _lottieDrawable.Start(); } }
public async Task TestMaxFrame() { await CoreApplication.MainView.Dispatcher.RunAsync(CoreDispatcherPriority.High, () => { var composition = CreateComposition(31, 391); var drawable = new LottieDrawable(); drawable.SetComposition(composition); drawable.MaxProgress = 0.25f; Assert.Equal(121f, drawable.MaxFrame); }); }
public async Task TestMinWithStartFrameFrame() { await CoreApplication.MainView.Dispatcher.RunAsync(CoreDispatcherPriority.High, () => { var composition = CreateComposition(100, 200); var drawable = new LottieDrawable(); drawable.SetComposition(composition); drawable.MinProgress = 0.5f; Assert.Equal(150f, drawable.MinFrame); }); }
public KeyPathTest() { var task = CoreApplication.MainView.Dispatcher.RunAsync(CoreDispatcherPriority.High, () => { _lottieDrawable = new LottieDrawable(); LottieComposition composition = LottieCompositionFactory.FromJsonStringSync(Fixtures.Squares, "squares").Value; _lottieDrawable.SetComposition(composition); }).AsTask(); task.Wait(); }
public KeyPathTest() { var task = CoreApplication.MainView.Dispatcher.RunAsync(CoreDispatcherPriority.High, () => { _lottieDrawable = new LottieDrawable(); try { LottieComposition composition = LottieComposition.Factory.FromJsonSync(new JsonReader(new StringReader(Fixtures.Squares))); _lottieDrawable.SetComposition(composition); } catch (IOException e) { throw new ArgumentException(e.Message, e); } }).AsTask(); task.Wait(); }
private async void MainPage_Loaded(object sender, RoutedEventArgs e) { var localDir = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFolderAsync(@"Assets"); var file = await localDir.GetFileAsync("test.json"); var json = await FileIO.ReadTextAsync(file, Windows.Storage.Streams.UnicodeEncoding.Utf8); await LottieView.SetAnimationFromJsonAsync(json, "test"); var compositionResult = await LottieCompositionFactory.FromJsonString(json, "test"); if (compositionResult.Value != null) { LottieDrawable.SetComposition(compositionResult.Value); LottieDrawable.RepeatCount = -1; LottieDrawable.PlayAnimation(); } LottieView.PlayAnimation(); }
private async void MainPage_Loaded(object sender, RoutedEventArgs e) { var localDir = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFolderAsync(@"Assets"); var file = await localDir.GetFileAsync("test.json"); var json = await FileIO.ReadTextAsync(file, Windows.Storage.Streams.UnicodeEncoding.Utf8); _drawForCanvas = new LottieDrawable(); await LottieView.SetAnimationFromJsonAsync(json); var composition = await LottieComposition.Factory.FromJsonStringAsync(json); LottieDrawable.SetComposition(composition); LottieDrawable.RepeatCount = -1; _drawForCanvas.SetComposition(composition); _drawForCanvas.RepeatCount = -1; _inited = true; LottieView.PlayAnimation(); LottieDrawable.PlayAnimation(); _drawForCanvas.PlayAnimation(); }