Sharpnado 选项卡第一个选项卡未显示

问题描述 投票:0回答:1

我在 TabSwitcher 中使用 DelayedViews。当我将 DelayedView 内的布局从 FlexLayout 更改为 Grid 时,第一个选项卡将不显示任何内容。当我打开下一个显示相同类型 DelayedView(同一类型的新对象)的选项卡时,它会正确显示。 仅第一个选项卡及其内容不会显示。 logcat 中没有抛出或显示异常

重现

标签视图切换器

<tabs:ViewSwitcher x:Name="Switcher"
                               Animate="True"
                               SelectedIndex="{Binding SelectedViewModelIndex, Mode=TwoWay}">

                    <tabs:DelayedView x:TypeArguments="contentViews:LobiPageView"
                                      AccentColor="White"
                                      BindingContext="{Binding Page1ViewModel}"
                                      Animate="True"
                                      UseActivityIndicator="True" />
                    <tabs:DelayedView x:TypeArguments="contentViews:LobiPageView"
                                      BindingContext="{Binding Page2ViewModel}"
                                      AccentColor="{StaticResource Primary}"
                                      Animate="True"
                                      UseActivityIndicator="True" />
                    <tabs:DelayedView x:TypeArguments="contentViews:LobiPageView"
                                      BindingContext="{Binding Page3ViewModel}"
                                      AccentColor="{StaticResource Primary}"
                                      Animate="True"
                                      UseActivityIndicator="True" />
                    <tabs:DelayedView x:TypeArguments="contentViews:LobiPageView"
                                      BindingContext="{Binding Page4ViewModel}"
                                      AccentColor="{StaticResource Primary}"
                                      Animate="True"
                                      UseActivityIndicator="True" />
                    <tabs:DelayedView x:TypeArguments="contentViews:LobiPageView"
                                      BindingContext="{Binding Page5ViewModel}"
                                      AccentColor="{StaticResource Primary}"
                                      Animate="True"
                                      UseActivityIndicator="True" />

                </tabs:ViewSwitcher>

延迟查看内容视图

<StackLayout>
    <Grid BindableLayout.ItemsSource="{Binding PageItems}" >

        <Grid.RowDefinitions>
            <RowDefinition></RowDefinition>
            <RowDefinition></RowDefinition>
            <RowDefinition></RowDefinition>
            <RowDefinition></RowDefinition>
        </Grid.RowDefinitions>
        <Grid.ColumnDefinitions>
            <ColumnDefinition></ColumnDefinition>
            <ColumnDefinition></ColumnDefinition>
            <ColumnDefinition></ColumnDefinition>
            <ColumnDefinition></ColumnDefinition>
            <ColumnDefinition></ColumnDefinition>
        </Grid.ColumnDefinitions>
        <BindableLayout.ItemTemplate>
            <DataTemplate>
....
</DataTemplate>
</Grid>
</stackLayout>

屏幕截图(如果适用) 第一页不显示 image 第二个选项卡以相同的内容视图正确显示 image

android .net tabs maui
1个回答
0
投票

这似乎是毛伊岛的错误。

解决方法是自己处理选定的 TabIndex 并在 TabviewSwitcher 的第一个索引上隐藏一个空的 StackLayout

© www.soinside.com 2019 - 2024. All rights reserved.