【问题标题】:Prevent automatic scrolling for an Editor in Xamarin.Forms.iOS防止 Xamarin.Forms.iOS 中的编辑器自动滚动
【发布时间】:2016-05-08 09:28:34
【问题描述】:

我有一个非常简单的 Xamarin.Forms 应用程序。 Xaml 是一个 Grid,具有一列和两行。第一行包含一个Entry 控件。第二行包含一个Scrollview,其中包含一个Editor 控件(多行文本框)。第二行的高度是*Scrollview VerticalOptions 设置为 FillAndExpand

Editor 填满时需要滚动。第一个Entry 应该留在原处。

在 Android 上,Editor 控件按预期工作,当它填满时会滚动。但在 iOS 上,只要键盘弹出,Editor 就会向上滚动,光标会消失在视线之外。当它只有几行文本时,它也会向上滚动,因此它们会消失。此行为发生在 iPhone 模拟器和物理设备上。

我已经尝试了 Scrollview、网格和入口控件上的所有垂直选项组合。没有什么能阻止不必要的滚动。

我不能在整个网格中放置一个 ScrollView,因为我需要第一个条目保持可见。

我还不能在这个网站上添加图片,所以这里是一个布局链接:

image link

花哨的颜色只是为了让我可以看到每个控件的开始和结束位置。 我正在使用截至 2016 年 1 月的所有内容的最新版本。

   <Grid Padding="5,5,5,5" RowSpacing="5" VerticalOptions="FillAndExpand"   HorizontalOptions="FillAndExpand" BackgroundColor="White"  >

    <!--One colum-->
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="*" />
    </Grid.ColumnDefinitions>

    <!--- 2 rows (0-1). 0=title, 1=body-->
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto" />
        <RowDefinition Height="*" />
    </Grid.RowDefinitions>

    <!-- row 0 Title -->
    <Entry x:Name="txtTitle" Grid.Row="0" Grid.Column="0" BackgroundColor="Gray" TextColor="Black" />

    <!-- row 1 Editor -->
    <ScrollView Grid.Row="1" Grid.Column="0" BackgroundColor="Red" Padding="5,5,5,5" >


        <!--Making the Editor FillAndExpand makes no difference-->   
        <Editor x:Name="txtBody" Grid.Row="1" Grid.Column="0" BackgroundColor="Olive"/>

        <!--  -->
     </ScrollView>


</Grid>

【问题讨论】:

    标签: ios xaml scroll xamarin.forms


    【解决方案1】:

    进一步更新。我发现编辑器控件有自己的滚动。所以我删除了它周围的 ScrollView。问题仍然存在。一旦编辑器中的文本行数超过编辑器的高度,您就无法在编辑模式下向下滚动到最后一行。如果您只想查看文本,这很好,但是一旦您点击屏幕使其进入编辑模式,您就无法到达最后一行。我已将其部署到 iPhone 4(作为最低公分母)并拍摄了屏幕截图。看到绿色编辑器底部的 1111111 了吗?下面有更多文本,但您无法在编辑模式下访问它。同样的事情发生在模拟器和 iPad 3 上。

    iPhone4 Screenshot

    这似乎是 Xamarin 的编辑器控件的一个根本缺陷。请问有人可以确认这个问题是否得到解决或者是否有解决方法?

    【讨论】:

    • 这里的问题完全相同。 Xamarin 还没有修复。
    猜你喜欢
    • 2019-08-13
    • 1970-01-01
    • 2010-10-12
    • 1970-01-01
    • 1970-01-01
    • 2017-05-28
    • 1970-01-01
    • 1970-01-01
    • 2011-10-25
    相关资源
    最近更新 更多