我对Xamarin很新。我想要做的是构建一个简单的应用程序,上面有3个图像。每个图像都需要水平滑动以显示下一个图像。我从儿童游戏“混合搭配”中得到了这个想法。游戏让你可以改变卡通动物的头部,身体和脚部。
因此,如果我有一组5个图像被分成三个部分(头部,身体,脚部),我如何在屏幕上显示图像以便让它们滑动?
我试图堆叠3个图库控件,但我无法将图像填满屏幕。
屏幕看起来应该是这样的;
这可以在Xamarin for Android或IOS中构建吗?
感谢您的帮助。
答案 0 :(得分:1)
对于iOS,您可以使用UIPageControl
。对于头部,身体,脚,你会有一个不同的UIPageControl
对象。我们的想法是,您将拥有一个UIView
UIScrollView
(其中三个)。 UIScrollView
将包含身体的所有不同部分(例如头部)。 PageControl
将处理滑动手势识别和动画,您将设置应在UIScrollView
事件UIPageControl
中显示ValueChanged
的哪一部分。代码看起来像这样:
在ViewDidLoad
中:
首先,将五个头部添加到UIScrollView
。我假设你将这五个头部分放在一个名为UIView
的{{1}}数组中。
headPageViews
在RectangleF frame;
for (int i=0; i<5; i++)
{
UIView pageView = headPageViews[i];
frame = headPageViews[i].Frame;
// change Frame.X so that the views are next to each other in scrollView
frame.X = i * this.scrollViewHead.Frame.Width;
pageView.Frame = frame;
this.scrollViewHead.AddSubViews(pageView);
}
中:接下来设置通过界面构建器添加的ViewDidLoad
:
UIPageControl
代码中的某处:最后处理this.pageControlHead = new UIPageControl(frame);
this.pageControlHead.HidesForSinglePage = true;
this.pageControlHead.ValueChanged += HandlePageControlHeadValueChanged;
this.pageControlHead.Pages = 5; this.viewHead.AddSubview(this.pageControlHead);
事件:
ValueChanged
对其他身体部位重复这些步骤,您应该具有所需的效果。
答案 1 :(得分:0)
您还可以在 UIViewController 中使用3个 UIScrollViews 作为已添加的图片,并设置 UIScrollView 以启用分页。 在 UIScrollViews 中设置图像的裁剪部分,然后您就可以轻松实现。
希望这有帮助。