【问题标题】:Xamarin Forms: Hide a Stack While Scrolling a listXamarin Forms:滚动列表时隐藏堆栈
【发布时间】:2020-11-17 08:31:01
【问题描述】:

我有一个 Xamarin 表单页面,它分为 2 个部分,前 40% 包含堆栈布局内的搜索控件,其他 60% 包含一个列表视图。向上滚动列表视图时,我想将堆栈布局隐藏在顶部,覆盖 40% 的屏幕。

我实现了从以下参考实现列表的滚动事件: https://github.com/velocitysystems/xf-controls/blob/master/XF.Controls/XF.Controls/Views/ListView.cs

我可以隐藏 stackLayout 但有很多闪烁。知道如何停止闪烁吗?输出不清晰和稳定。

【问题讨论】:

    标签: xamarin xamarin.forms xamarin.ios xamarin.android


    【解决方案1】:

    您可以将动画 TranslateTo 用于 StackLayout。

    例子:

    OnScrolled()
    {
        Device.BeginInvokeOnMainThread(() => {
            if (isScrollToUp)
                HeaderStackLayout.TranslateTo(0,-500);
            else
                HeaderStackLayout.TranslateTo(0,500);
        });
    }
    

    【讨论】:

      【解决方案2】:

      您可以将搜索控件作为 ListView 的标题: https://developer.xamarin.com/guides/xamarin-forms/user-interface/listview/customizing-list-appearance/#Headers_and_Footers

      由于标题是 ListView 本身的一部分,一旦您有足够的内容滚动浏览,它将按预期滚动。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-03-13
        • 2017-11-29
        • 2015-10-15
        • 2019-04-19
        • 2016-09-29
        相关资源
        最近更新 更多