ScrollView 中的 StackLayout,错误控制焦点 UWP
StackLayout within ScrollView, wrong control focus UWP
我有以下 ContentPage
<ContentPage>
<ContentPage.Content>
<ScrollView>
<StackLayout>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
</StackLayout>
</ScrollView>
</ContentPage.Content>
</ContentPage>
我 运行 在 UWP 下有一个奇怪的行为:如果我向下滚动一点并尝试点击例如第 6 个编辑器,我关注第 3 个编辑器控件。
当我在滚动查看器的顶部时,我会聚焦于正确的编辑器,但如果我滚动一点,我就会错误地聚焦编辑器。
看起来我只能到达 ScrollView 顶部可见的第一个 X 编辑器。
有什么想法吗?
我猜你正在使用 Xamarin.Forms。这是 UWP 平台框架中的错误。
您可以在 https://github.com/xamarin/Xamarin.Forms/issues/11106 中找到此问题。
请将框架升级到 4.7.0.1080。这对我有用。
我有以下 ContentPage
<ContentPage>
<ContentPage.Content>
<ScrollView>
<StackLayout>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
<Editor Text="description" FontSize="20" FontAttributes="Bold" Margin="10" HeightRequest="200" HorizontalOptions="FillAndExpand"/>
</StackLayout>
</ScrollView>
</ContentPage.Content>
</ContentPage>
我 运行 在 UWP 下有一个奇怪的行为:如果我向下滚动一点并尝试点击例如第 6 个编辑器,我关注第 3 个编辑器控件。
当我在滚动查看器的顶部时,我会聚焦于正确的编辑器,但如果我滚动一点,我就会错误地聚焦编辑器。
看起来我只能到达 ScrollView 顶部可见的第一个 X 编辑器。
有什么想法吗?
我猜你正在使用 Xamarin.Forms。这是 UWP 平台框架中的错误。
您可以在 https://github.com/xamarin/Xamarin.Forms/issues/11106 中找到此问题。
请将框架升级到 4.7.0.1080。这对我有用。