当前位置:  开发笔记 > 前端 > 正文

使用iPhone SDK创建"加载..."视图

如何解决《使用iPhoneSDK创建"加载"视图》经验,为你挑选了3个好方法。

当一些长期待处理操作正在进行时,如何创建许多应用程序使用的黑/灰模式弹出窗口视图?

就像使用基于位置的服务,加载网页一样,屏幕变暗,并且有一个模态视图显示旋转图标"请稍候......"

以下屏幕截图中的示例:

截图



1> Jane Sales..:

这实际上是无证件(无论如何在2.2.1中)UIProgressHUD.像这样创建一个:

在你的.h:

@interface UIProgressHUD : NSObject 
- (UIProgressHUD *) initWithWindow: (UIView*)aWindow; 
- (void) show: (BOOL)aShow; 
- (void) setText: (NSString*)aText; 
@end 

在你的.m:

- (void) killHUD: (id)aHUD 
{ 
[aHUD show:NO]; 
[aHUD release]; 
} 

- (void) presentSheet 
{ 
id HUD = [[UIProgressHUD alloc] initWithWindow:[contentView superview]]; 
[HUD setText:@"Doing something slow. Please wait."]; 
[HUD show:YES]; 
[self performSelector:@selector(killHUD:) withObject:HUD afterDelay:5.0]; 
} 


可以使用并提交到App Store吗?
是的,这不是链接到私有API.我们已经使用UIAlertView上的按钮做了类似的事情,经过审查没有任何问题.
有两种使用私有API的方法.第一个是链接到私有框架,第二个是使用来自公共框架的未记录的调用.后者(我们在这里做的)过去常常通过评论,但几个月前苹果现在也拒绝它.换句话说,这始终是私有API,官方文档中没有描述,因此无法保证工作,留下或让您完成审核.

2> Matej Bukovi..:

如果你想避免未记录的api,你也可以看看MBProgressHUD.它与UIProgressHUD类似,甚至还有一些额外的功能.



3> Ricky Helges..:

我认为最简单的(几行代码),完全记录和最美的方式是使用带有UIActivityIndi​​catorView的UIAlertView:

http://iosdevelopertips.com/user-interface/uialertview-without-buttons-please-wait-dialog.html

UIAlertView与UIActivityIndi​​catorView http://iosdevelopertips.com/wp-content/uploads/2010/02/alert3-204x300.png

推荐阅读
kikokikolove
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有