如何在 xamarin ios 中使用轮播视图
Posted
技术标签:
【中文标题】如何在 xamarin ios 中使用轮播视图【英文标题】:How to use carousel View in xamarin ios 【发布时间】:2016-07-01 11:31:58 【问题描述】:我正在尝试按照下图实现图像轮播视图。
当用户在 Xamarin ios 中滚动图像(突出显示图像下方的相应点)时,我想使用带有突出显示点的轮播视图显示多个图像。
我尝试使用 iCarousel - Xamarin 组件 ( iCarousel Link ) 来显示带点的图像。在这里,我可以在轮播视图中显示图像。谁能建议我解决这个问题。
【问题讨论】:
【参考方案1】:您可以在 iCarousel 视图下方添加一个 UIPageControl:
UIPageControl pageControl = new UIPageControl(frame));
pageControl.Pages = carousel.NumberOfItems;
pageControl.CurrentPage = carousel.CurrentItemIndex;
// For some reason I needed to set the back ground color
// for ValueChanged event to fire if you want pages to
// change when the UIPageControl is tapped.
pageControl.BackgroundColor = UIColor.Black;
View.AddSubview(pageControl);
然后处理 carousel.ScrollEnd 事件:
carousel.ScrollEnd += (sender, e) =>
pageControl.CurrentPage = carousel.CurrentItemIndex;
;
如果您希望能够通过点击 UIPageControl 来更改页面:
pageControl.ValueChanged += (sender, e) =>
carousel.CurrentItemIndex = pageControl.CurrentPage;
;
使用 UIPageControl,您可以点击控件的左侧或右侧以转到上一页或下一页,但您不能通过单击一个点来转到特定页面。见:https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIPageControl_Class/index.html
我在此处添加了带有 UIPageControl 的 iCarousel 组件示例:https://github.com/jgold6/XamarinSupportSamples/tree/master/iOS-iCarouselWithPageControl
【讨论】:
以上是关于如何在 xamarin ios 中使用轮播视图的主要内容,如果未能解决你的问题,请参考以下文章
Xamarin 表单轮播视图 - Android 和 iOS 差异
如何在 Xamarin 中使用具有 android/IOS 特定视图的控制模板