问题标签 [uiapplicationdelegate]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
483 浏览

iphone - AppDelegate 应该做多少?

我正在设计一个相当大的应用程序,在启动时它将与几个不同的服务器创建会话。当他们正在创建一个在应用程序的所有部分中使用的会话时,我认为这在 App Delegate 中是最好的。

但问题是我需要在屏幕上显示会话进度。我计划在主菜单的底部有一个 UIToolBar,我不想用进度条覆盖它,而是覆盖它上面的 UIView。所以我看到它的方式我可以用几种不同的方式来做。

1) 让 App Delegate 建立会话并向主菜单类报告进度,以便它可以在进度栏中表示它(如果会话是在单独的线程中创建的,这样做会有什么问题吗?),

2)让 App 委托显示主菜单(带有一堆按钮和 UIToolBar 的 UIView)并让它跟踪并显示进度(我从未在 App Delegate 中显示任何内容,但假设您可以这样做,但不推荐)或

3) 让 App Delegate 只需按下主菜单并让 mainMenu 类创建会话并显示进度条。

4)我认为另一种方法是在委托类中创建会话并将委托设置为mainMenu而不是self(AppDelegate),尽管我从未使用过self以外的任何东西,所以不确定这是否可行或者我是否能够关闭线程(通过调用 super 可能?)因为它在 AppDelegate 而不是类的委托中运行。

正如我之前所说的,会话是在一个单独的线程中的一个类中创建的,因此它不会锁定 UI,我认为最好的方法是第一种,但我会遇到问题让它在一个单独的线程中运行,报告回到应用程序委托,然后将该消息发送到 mainMenu 视图?

我希望一切都有意义,如果您需要任何进一步的澄清,请告诉我。任何信息表示赞赏

干杯,

0 投票
2 回答
3215 浏览

iphone - 隐藏 iPhone 状态栏将我的 tableViews 拉高 20px

在执行异步 HTTP 请求时,我隐藏 iPhone 状态栏并在我自己的自定义 UIViewController 中设置动画以显示上传状态。因此,用户不会看到信号强度、运营商、时间和电池寿命,而是根据 HTTP 请求的进度获取消息。我的状态栏正好是 20px 高,非常适合以前的状态栏。当 HTTP 活动完成后,自定义视图动画出来,iPhone 状态栏动画化回来。

我想避免完全隐藏 iPhone 状态栏,而是将我的自定义视图放在状态栏的顶部。目前,如果我调用我的自定义视图动画并将 iPhone 状态栏设置为可见,我的自定义视图就在它后面。

这是我的代码:

没有 [[UIApplication sharedApplication]setStatusBarHidden:YES animated:YES] 你看不到我的自定义视图。我怎样才能让我的自定义视图只显示在状态栏的顶部,这样我就不必隐藏它了?

谢谢!

0 投票
2 回答
667 浏览

iphone - 如何访问其他类中的属性/方法

我有一个具有一些 UITabBarController 属性的 RootViewController:

我希望能够从另一个类访问这些标签栏控制器。

如何在另一个类中使用 UIApplication 来访问 UITabBarControllers 和切换选项卡?

0 投票
4 回答
24753 浏览

iphone - iOS 4.0 中的 ApplicationWillTerminate

在 iOS 4.0 中没有调用 applicationWillTerminate 委托方法 当我点击 Home 按钮时,我看到调用了 applicationWillResignActive 和 applicationDidEnterBackground 委托方法。

当我双击主页按钮并再次启动应用程序时,我发现正在调用 applicationWillEnterForeground 和 applicationDidBecomeActive 委托方法。

但我想知道何时会调用 applicationWillTerminate 委托方法,我会在其中执行一些数据库/文件备份例程。

我什至尝试点击减号并删除在后台运行的应用程序,但它仍然没有调用任何委托方法。

有任何想法吗 ???

0 投票
3 回答
1697 浏览

objective-c - iPhone Application Delegate 变量没有被保留

我在我的 iPhone 应用程序委托 (AppDelegate) 中检索/保留变量时遇到了一个非常奇怪的问题。最初,我可以逐步查看我的值是否已传递给 logfile(有问题的 NSString 变量),但是当从另一个类中检索 logfile 时(请参见下面的代码),它会出错。

这是我的 AppDelegate.h 文件:

这是我的 AppDelegate.m:

当我使用电话(来自另一个班级)时:

“日志文件”作为“超出范围”返回,因此局部变量“s”是糊状的。

我在这里做错了什么?这对我来说没有意义。

0 投票
1 回答
1220 浏览

iphone - UIView(子视图)不向 AppDelegate 发送 IBActions

我遇到了这个问题,因为我最初在主 NIB 中制作了所有内容,但是在阅读后了解到最好使用子视图。

我在 AppDelegate 中有我的 IBActions,并且我已经成功连接并加载了我的子视图。但是,当我尝试将子视图中的按钮连接到 AppDelegate 中的 IBAction 时,IBAction 会出现在“First Responder”下。它们似乎连接得很好,但是在运行应用程序时它们不会触发 IBActions(我已经用一些 NSLogs 确认了这一点,这不是 IBActions 中的代码错误)。我究竟做错了什么?

谢谢!

0 投票
2 回答
1591 浏览

iphone - 以编程方式将 iPhone 置于睡眠模式

我使用以下代码来防止 iPhone 进入睡眠模式。

但是是否可以通过编程将 iphone 置于睡眠模式?

0 投票
1 回答
1536 浏览

iphone - 在一个类中导入appDelegate和在appDelegate中同一个类的后果

我想知道在一个类中导入 appDelegate 和在 appDelegate 中导入同一个类的后果。因为,我在我的应用程序中成功地做到了这一点,但建议不要这样做。尽管进行了很多搜索,但我找不到答案。

提前致谢。

0 投票
2 回答
2312 浏览

iphone - 在 iOS4 中 applicationWillEnterForeground 可能会在 applicationDidEnterBackground 之前被调用,这会产生问题

在 iOS 4 中,如果我快速关闭并重新打开我的应用程序(在applicationWillResignActive调用之后), applicationWillEnterForeground有可能在 applicationDidEnterBackground之前被调用并导致黑色空白屏幕,因为应用程序立即进入后台状态在前台状态之后。

这是它在控制台中打印的顺序:

* 1. applicationWillResignActive
2.applicationDidEnterBackground
3.applicationWillEnterForeground
4. applicationDidBecomeActive
1. applicationWillResignActive
3.applicationWillEnterForeground
2. applicationDidEnterBackground *

如何处理这种情况?并确保应用程序委托方法以正确的顺序执行?

提前致谢。

0 投票
4 回答
29461 浏览

iphone - UIApplication sharedApplication - keyWindow 为零?

我想将 CGPoint 从我的 UIView 转换为 UIWindow 坐标,并意识到 UIApplication keyWindow 始终为零;为什么是这样?

我已经尝试过convertPoint:toView:UIView 的方法。

请参阅我在 Xcode 模板中的视图控制器中尝试的示例代码(视图应用程序):

我得到:

我可以转换它,但只有当我通过应用程序委托访问窗口时。而不是 UIApplication。根据文档, keyWindow 应该在这里工作,但为零。为什么是这样?