【发布时间】:2023-03-17 06:37:01
【问题描述】:
-- 我的 appdelegate.m 在所有其他默认调用中都有这个:--
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
[self.window makeKeyAndVisible];
NSLog(@"Launched");
return YES;
}
-- 我的 main.mm 看起来像这样:--
#import <UIKit/UIKit.h>
#import "AppDelegate.h"
#include <allegro5/allegro.h>
ALLEGRO_DISPLAY *Display;
int main(int argc, char *argv[])
{
al_init();
al_set_new_display_option(ALLEGRO_SUPPORTED_ORIENTATIONS,
ALLEGRO_DISPLAY_ORIENTATION_LANDSCAPE,ALLEGRO_REQUIRE);
Display = al_create_display(960, 640);
printf("%d, %d", al_get_display_width(Display),
al_get_display_height(Display));
return 0;
}
只要我在项目中包含 allegro.h 和所有必需的库/框架并在 main 中调用 al_init(),程序就会停止打印“已启动”。似乎 AppDelegate 被完全忽略了。有人有什么建议吗???
【问题讨论】:
-
在 AppDelegate 中覆盖 -(void)applicationDidBecomeActive:(UIApplication *)application 并在其中放置一个 NSLog 以查看它是否到达那里。然后,如果您调试打印,您就会知道它会到达 App Delegate。
-
你也可以看看-(void)applicationWillEnterForeground:(UIApplication *)application
标签: ios appdelegate uiapplication allegro