我无法在 iOS 模拟器中运行我的基本 iPhone 应用程序(同时通过斯坦福 iTunes CS193p 讲座)。
我已经搜索了一段时间(谷歌和 SO),但到目前为止找不到解决方案。有许多类似的错误,但解决方案似乎无法解决此问题。
在 Xcode 中,我单击“运行”。它编译和构建成功,启动 iOS 模拟器,但它永远不会加载应用程序。只有顶部的状态栏。带黑屏。
我只编写了非常基本的代码(在讲座之后)并且无法解决这个问题。
为了让事情更加混乱,我(UIWebView)
在这些讲座之前写了一个网络包装器,这很好用。但是代码几乎没有任何区别。我从头开始创建的所有新应用程序都因相同的黑屏问题而失败。
如果我点击模拟器上的主页按钮并启动应用程序,它将显示。但 Xcode 似乎并不知道发生了什么。
就好像 Xcode 失去了与 iOS 模拟器对话的能力并假设它正在运行(即使我退出了 iOS 模拟器)。我尝试退出 Xcode,它要求我停止任务。然后它就挂了。所以我必须强制重启才能退出 Xcode。
我正在使用:OSX 10.8.2 Xcode 4.5.2 iOS 模拟器 6.0
CalculatorAppDelegate.h
#import <UIKit/UIKit.h>
@interface CalculatorAppDelegate : UIResponder <UIApplicationDelegate>
@property (strong, nonatomic) UIWindow *window;
@end
CalculatorAppDelegate.m
#import "CalculatorAppDelegate.h"
@implementation CalculatorAppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions (NSDictionary *)launchOptions
{
// Override point for customization after application launch.
return YES;
}
- (void)applicationWillResignActive:(UIApplication *)application
{
// Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.
// Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.
}
- (void)applicationDidEnterBackground:(UIApplication *)application
{
// Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.
// If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
}
- (void)applicationWillEnterForeground:(UIApplication *)application
{
// Called as part of the transition from the background to the active state; here you can undo many of the changes made on entering the background.
}
- (void)applicationDidBecomeActive:(UIApplication *)application
{
// Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
}
- (void)applicationWillTerminate:(UIApplication *)application
{
// Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
}
@end
计算器视图控制器.h
#import <UIKit/UIKit.h>
@interface CalculatorViewController : UIViewController
@property (weak, nonatomic) IBOutlet UILabel *display;
@end
计算器视图控制器.m
#import "CalculatorViewController.h"
@implementation CalculatorViewController
@synthesize display = _display;
- (IBAction)digitPressed:(UIButton *)sender
{
NSString *digit = [sender currentTitle];
NSLog(@"digit pressed = %@", digit);
}
@end