我正在寻找有关自定义进度视图的解决方案。
基本上,我想填写下面的图片来表示加载进度,就像我们在游戏中所拥有的一样。
任何想法如何实现它?
答案 0 :(得分:0)
使用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 - 黑色表示可见部分,白色表示透明。
答案 1 :(得分:0)
创建自定义视图类并在该类中添加动画序列,以无限顺序显示图像。
将此视图添加到主窗口,就像这样 (UIWindow *)[[UIApplication sharedApplication] .windows objectAtIndex:0];
调用bringSubviewToFront在您想要此加载屏幕(视图)的任何视图上显示该视图。