【问题标题】:How add a scroll bar in the scroll view of xamarin ios ?如何在 xamarin ios 的滚动视图中添加滚动条?
【发布时间】:2016-12-14 13:47:30
【问题描述】:

我在 xaml 页面中有一个滚动视图。但我找不到与之关联的滚动条。没有可用于显示滚动条的属性。我应该添加一个自定义渲染器类来显示滚动条吗?

【问题讨论】:

  • UIScrollView 没有滚动条 - 它实际上只是有一个指示器,显示您相对于内容大小的位置。 AFAIK Xamarin.Forms(我假设您正在使用它,因为您标记了 XAML)没有提供任何显示该滚动指示器的方法。但是UIScrollView 有一个FlashScrollIndicators,这可能有助于自定义渲染器,但它只是短暂地显示滚动指示器,并不能使其始终可见。

标签: c# xaml xamarin xamarin.ios scrollview


【解决方案1】:

UIScrollView 滚动条上并不总是有“Win32 样式”,当您滚动时可以显示滚动指示器以向用户显示他们在可滚动视图中的位置。

在自定义渲染器 (ScrollViewRenderer) 中,您可以设置以下项目:

scrollView.ShowsHorizontalScrollIndicator = true;
scrollView.ShowsVerticalScrollIndicator = true;
scrollView.IndicatorStyle = UIScrollViewIndicatorStyle.Black;
scrollView.ScrollIndicatorInsets = new UIEdgeInsets(0, 30, 0, 30);

但是,同样,内置滚动指示器只会在用户实际滚动时显示在屏幕上。

如果您一直需要它们在屏幕上,您需要自己绘制滚动条。

注意:这与 OS-X 滚动视图的行为相同。

【讨论】:

  • 嗨,我必须在页面出现时显示滚动视图中有内容。现在由于没有出现滚动条,因此没有迹象表明内容超出了屏幕。当我们开始滚动时出现滚动条。如果不使用自定义渲染器,我可以显示页面是可滚动的吗?
  • @Krishna 1) 缩小 UIScrollView 直到用户可以看到内容,永远不要让用户看到整个视图是空白的,2) 通过 ScrollRectToVisible 以编程方式将用户滚动到内容 3) 设计/放置您的内容,使其不会留下与视图大小一样大/大于视图大小的空白区域,4) 自定义渲染器以添加滚动条....
猜你喜欢
  • 1970-01-01
  • 2016-07-07
  • 2013-08-17
  • 1970-01-01
  • 2016-07-01
  • 2018-03-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多