我想在应用程序启动时显示progressView(使用启动画面),因此,在 appDelegate .h文件中我声明了progressView:
UIProgressView *progView;
并在 appDelegate .m文件中我这样做了:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
sleep(1);
progView = [[UIProgressView alloc] initWithProgressViewStyle:UIProgressViewStyleBar];
progView.progress = 0.75f;
// the rest..
}
我没有在启动画面中看到进度条,请提前帮助,请提前:)
答案 0 :(得分:2)
你不能影响闪屏本身,它只是一个静态图像。
然而,您可以执行的操作是让您的应用加载,直到您收到委托消息,然后启动一些显示您的进度视图的基本UI,然后在后台线程中执行一些繁重的启动过程,相应地更新您的进度条。当线程完成其工作时,回调主线程以启动实际应用程序。
修改:更新了我的答案以澄清一些事情
iOS中的应用程序启动基本上分两个阶段进行。
-application:didFinishLaunchingWithOptions
被调用。在这种方法中,作为程序员,您可以执行一些启动任务,例如加载数据库,连接到某些服务等。在此阶段,您可以影响用户界面并显示例如进度条。如果您需要这样做,请创建一个后台线程并在那里进行设置工作。注意:如果您只是在UI上放置一个进度条然后在-application:didFinishLaunchingWithOptions:
方法中执行某些操作,则它不起作用,因为直到 此方法后才会显示UI已经回来了。这就是你需要在后台线程中进行设置的原因。
答案 1 :(得分:1)
是progView的所有代码吗?因为你没有将它作为子视图添加到任何东西,所以你怎么能看到它?你需要这样的东西:
[splashView addSubview:progView];
frenetisch对IOS应用程序的启动过程给出了一些合理的解释,但听起来你需要对此进行一些基本的调查。在调用didFinishLaunchingWithOptions之前通常需要很短的时间,您可以显示第一个视图。但是,在您的应用实际可用之前,您还需要做些什么?您希望显示进度视图,因此必须有一些您计划执行的操作,这需要一些时间。正是这样,你需要显示进度视图并以某种方式更新它的进度。