猿问

Xamarin表单-使用TranslateTo向上滑动StackLayouts

我有一个带有4个StackLayouts的页面,在OnAppearing上,我将底部的3个“向上滑动”,以便顶部下方的第2个顶部创建一个带有工具栏的下拉效果,供用户单击(XAML中的iconStack),然后将堆栈向上或向下滑动。


当我单击它以使其上下滑动时,此方法工作正常,但是当我向上滑动OnAppearing时,有时它不能完全向上移动,从而使某些堆栈可见,并且我看不到原因,或在调试中看不到任何东西。


谁能在我的代码中发现明显的东西?


protected override async void OnAppearing()

        {

           // here I get some data from the database and set labels etc before I do the next line...

            SlideUp(0);

            base.OnAppearing();

        }

public void SlideUp(uint time)

        {

            TopLayout.TranslateTo(0, (headerStack.Bounds.Height - (TopLayout.Height + headerStack.Height)), time, Easing.Linear);

            headerStack.TranslateTo(0, (headerStack.Bounds.Height - (TopLayout.Height + headerStack.Height)), time, Easing.Linear);

            Articlestack.TranslateTo(0, (headerStack.Bounds.Height - (TopLayout.Height + headerStack.Height)), time, Easing.Linear);

        }


        public void SlideDown(uint time)

        {

            TopLayout.TranslateTo(0, 0, time, Easing.Linear);

            headerStack.TranslateTo(0, 0, time, Easing.Linear);

            Articlestack.TranslateTo(0, 0, time, Easing.Linear);

        }

XAML:


<?xml version="1.0" encoding="utf-8" ?>

<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"

             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"

             x:Class="gl_mobile_app.Views.Article.ArticleInfoOpen"

             xmlns:artina="clr-namespace:UXDivers.Artina.Shared;assembly=UXDivers.Artina.Shared"

             xmlns:local="clr-namespace:gl_mobile_app.Views.Templates;assembly=gl_mobile_app"

             xmlns:ratio="clr-namespace:gl_mobile_app;assembly=gl_mobile_app"

             xmlns:custom="clr-namespace:gl_mobile_app.Controls;assembly=gl_mobile_app"

             xmlns:ffimageloading="clr-namespace:FFImageLoading.Forms;assembly=FFImageLoading.Forms">


  <ContentPage.ToolbarItems>

    <ToolbarItem Text="Back" Clicked="GoBack" />

  </ContentPage.ToolbarItems>

呼唤远方
浏览 201回答 1
1回答

繁星点点滴滴

您可以将可见性设置为false,但是您会丢失一些翻译动画,而不是可以进行翻译,然后删除可见性,这将使其保持平稳。
随时随地看视频慕课网APP
我要回答