Xamarin.Froms 用户界面——控件——布局——ScrollView
来源:互联网 发布:php教程做表格 编辑:程序博客网 时间:2024/06/07 06:21
滚动型ScrollView
使用ScrollView显示不能适合一个屏幕的布局,并且内容为键盘腾出空间。
- PDF用于离线使用
- 下载PDF
- 示例代码:
- 布局
- BusinessTumble示例
让我们知道你对此的感受
最后更新:2016年4月
ScrollView
包含布局并使它们能够在屏幕之外滚动。ScrollView
还用于允许视图在键盘显示时自动移动到屏幕的可见部分。
本文包括:
- 目的 - 使用目的
ScrollView
及时间。 - 用法 - 如何
ScrollView
在实践中使用。 - 属性 - 可以读取和修改的公共属性。
- 方法 - 可以调用滚动视图的公共方法。
- 事件 - 可用于监听视图状态中的更改的事件。
目的
ScrollView
可以用于确保较小的视图在较小的手机上显示良好。例如,在iPhone 6上工作的布局可能会在iPhone 4上被裁剪。使用ScrollView
将允许布局的剪辑部分显示在较小的屏幕上。
用法
ScrollView
不应该嵌套。另外,ScrollView
s不应该嵌套与提供滚动的其他控件,如ListView
和WebView
。ScrollView
公开Content
可以设置为单个视图或布局的属性。考虑一个具有非常大的boxView的布局的例子,其次是Entry
:
<ContentPage.Content> <ScrollView> <StackLayout> <BoxView BackgroundColor="Red" HeightRequest="600" WidthRequest="150" /> <Entry /> </StackLayout> </ScrollView></ContentPage.Content>
在C#中:
var scroll = new ScrollView();Content = scroll;var stack = new StackLayout();stack.Children.Add(new BoxView { BackgroundColor = Color.Red, HeightRequest = 600, WidthRequest = 600 });stack.Children.Add(new Entry());
在用户向下滚动之前,只有BoxView
可见:
请注意,当用户开始在其中输入文本时Entry
,视图滚动以使其在屏幕上可见:
属性
ScrollView具有以下属性:
- 内容 - 获取或设置要显示的视图
ScrollView
。 - ContentSize - 只读,获取内容的大小,其宽度和高度分量。这是一个可绑定的属性
- 取向 -这是一个
ScrollOrientation
,这是可以被设置为一个枚举Horizontal
,Vertical
或Both
。 - ScrollX - 只读,获取X维当前的滚动位置。
- ScrollY - 只读,在Y维度中获取当前滚动位置。
方法
ScrollView
提供了一种ScrollToAsync
方法,可用于使用坐标滚动视图或通过指定应显示的特定视图。
当使用坐标时,指定x
和y
坐标,以及一个布尔值,表示滚动是否应该是动画的:
scroll.ScrollToAsync(0, 150, true); //scrolls so that the position at 150px from the top is visiblescroll.ScrollToAsync(label, ScrollToPosition.Start, true); //scrolls so that the label is at the start of the list
当滚动到特定元素时,ScrollToPosition
枚举会指定元素在视图中的显示位置:
- 中心 - 将元素滚动到视图的可见部分的中心。
- 结束 - 将元素滚动到视图的可见部分的末尾。
- MakeVisible - 滚动元素,使其在视图中可见。
- 开始 - 将元素滚动到视图的可见部分的开头。
该IsAnimated
属性指定视图将如何滚动。当设置为true时,将使用平滑的动画,而不是立即将内容移动到视图中。
活动
ScrollView
只暴露一个事件Scrolled
。Scrolled
当视图完成滚动时,它被提升。事件处理程序Scrolled
需要ScrolledEventArgs
,它具有ScrollX
和ScrollY
性能。以下演示如何使用当前滚动位置更新标签ScrollView
:
Label label = new Label { Text = "Position: " };ScrollView scroll = new ScrollView();scroll.Scrolled += (object sender, ScrolledEventArgs e) => { label.Text = "Position: " + e.ScrollX + " x " + e.ScrollY;};
请注意,由于在列表末尾滚动时的弹跳效果,滚动位置可能为负。
- Xamarin.Froms 用户界面——控件——布局——ScrollView
- Xamrin.Froms 用户界面——控件——主题
- Xamarin.Forms 用户界面——控件——布局
- Xamarin.Forms 用户界面——控件
- Xamarin.Forms 用户界面——控件——布局——创建自定义布局
- Xamarin.Forms 用户界面——控件——布局——StackLayout
- Xamarin.Forms 用户界面——控件——布局——AbsoluteLayout
- Xamarin.Forms 用户界面——控件——布局——RelativeLayout
- Xamarin.Forms 用户界面——控件——布局——Grid
- Xamarin.Forms 用户界面——控件——布局——LayoutOptions
- Xamarin.Forms 用户界面——控件——布局——Margin and Padding
- Xamarin.Forms 用户界面——控件——布局——Device Orientation
- Xamarin.Forms 用户界面——控件——页面
- Xamarin.Forms 用户界面——控件——View
- Xamarin.Forms 用户界面——控件——Cells
- Xamarin.Forms 用户界面——控件——Images
- Xamarin.Forms 用户界面——控件——Layouts
- Xamarin.Forms 用户界面——控件——ListView
- java中String、StringBuffer、StringBuilder的区别
- MySQL5.7.14执行SQL时出现1055错误
- 解决vue-cli中stylus无法使用的问题
- Ruby 命令行大全
- CodeFroce Round 340 div2 E XOR and Favorite Number【莫队算法】
- Xamarin.Froms 用户界面——控件——布局——ScrollView
- Python 3 爬虫(一) 简单的爬虫
- 机器学习编程之python环境
- Xamarin.Forms 用户界面——控件——布局——LayoutOptions
- 51nod 动态规划教程【矩阵取数】
- java安装和环境变量设置
- Dlib提取Hog特征
- Xamarin.Forms 用户界面——控件——布局——Margin and Padding
- 基于CortexM3 CAN驱动