自定义形状的进度视图

我正在寻找一些有关自定义进度视图的解决scheme。

基本上,我想填充下面的图像来表示加载进度,就像我们在游戏中的加载进度。

在这里输入图像说明

任何想法如何实现它?

使用CoreGraphics屏蔽:

UIImage *img = [UIImage imageNamed:@"imagetomask.png"]; CGImageRef maskRef = [UIImage imageNamed:@"mask.png"].CGImage; CGImageRef mask = CGImageMaskCreate(CGImageGetWidth(maskRef), CGImageGetHeight(maskRef), CGImageGetBitsPerComponent(maskRef), CGImageGetBitsPerPixel(maskRef), CGImageGetBytesPerRow(maskRef), CGImageGetDataProvider(maskRef), NULL, false); CGImageRef maskedImage = CGImageCreateWithMask([img CGImage], mask); [imageView setImage:maskedImage]; 

你的mask.png应该是不透明的图像,像倒置的alpha – black可见部分填充,白色透明。

创build自定义视图类,并在该类中添加animation序列,以无限顺序显示您的图像。

将这个视图添加到mainwindow中(UIWindow *)[[UIApplication sharedApplication] .windows objectAtIndex:0];

调用bringSubviewToFront来显示你想要加载屏幕(视图)的任何视图上的视图。