模拟器中的黑屏问题

发布于 2024-11-09 11:23:17 字数 2573 浏览 0 评论 0原文

我正在为 iPad 开发一款游戏,我让它以菜单屏幕启动。有一段时间,菜单屏幕在模拟器中显示得很好。我在启动基于视图的应用程序时使用 xcode 提供的主视图控制器。但是,不幸的是,我不小心切断了界面生成器中 UIView 和视图控制器之间的连接,重新连接后,屏幕现在显示为空白。当我在界面生成器中模拟屏幕时它工作得很好,但在 xcode 中运行时却不行。这是视图控制器的代码:

//
//  FunctionMachineViewController.h
//  FunctionMachine
//
//  Created by Kameron Schadt on 5/24/11.
//  Copyright 2011 Willamette University. All rights reserved.
//

#import <UIKit/UIKit.h>

@interface FunctionMachineViewController : UIViewController {

IBOutlet UITextField* equation;
IBOutlet UISlider* startLevel;
IBOutlet UITextView* startLevelNumber;

}

- (IBAction) startOnePlayer:(id)sender;
- (IBAction) startTwoPlayer:(id)sender startingEquation:(NSString*)equationUsed;
- (IBAction) sliderValueChanged:(UISlider*)sender;

@property(nonatomic, retain) IBOutlet UISlider* startLevel;
@property(nonatomic, retain) IBOutlet UITextField* equation;
@property(nonatomic, retain) IBOutlet UITextView* startLevelNumber;

@end


//
//  FunctionMachineViewController.m
//  FunctionMachine
//
//  Created by Kameron Schadt on 5/24/11.
//  Copyright 2011 Willamette University. All rights reserved.
//

#import "FunctionMachineViewController.h"
#import "GameViewController.h"

@implementation FunctionMachineViewController

@synthesize equation, startLevel, startLevelNumber;

- (IBAction)sliderValueChanged:(UISlider*)sender {
[startLevelNumber setText:[NSString stringWithFormat:@" %.1f", [sender value]]];
}

-(IBAction)startOnePlayer:(id)sender
{
GameViewController* GameView = [[GameViewController alloc] initWithNibName:nil bundle:nil];
[GameView isOnePlayer:YES];
[self presentModalViewController:GameView animated:YES];
}

-(IBAction)startTwoPlayer:(id)sender startingEquation:(NSString*)equationUsed
{
GameViewController* GameView = [[GameViewController alloc] initWithNibName:nil bundle:nil];
[GameView isOnePlayer:NO];
[self presentModalViewController:GameView animated:YES];
}

- (void)viewDidLoad {
[super viewDidLoad];
}


// Override to allow orientations other than the default portrait orientation.
- (BOOL)shouldAutorotateToInterfaceOrientation:    (UIInterfaceOrientation)interfaceOrientation {
return YES;
}

- (void)didReceiveMemoryWarning {
// Releases the view if it doesn't have a superview.
[super didReceiveMemoryWarning];

// Release any cached data, images, etc that aren't in use.
}

- (void)viewDidUnload {
// Release any retained subviews of the main view.
// e.g. self.myOutlet = nil;
}


- (void)dealloc {
[super dealloc];
}

@end

我在这里没有真正看到任何问题,所以我假设它与我将视图控制器重新连接到视图有关。我没有正在使用的实际视图文件,只有视图控制器。有人可以帮忙吗?

I'm working on a game for the iPad, and I have it start up with a menu screen. For a while, the menu screen would come up just fine in the simulator. I'm using the main view controller that xcode provides when starting up a view-based application. But, unfortunately, I accidentally cut off the connection between the UIView and the view controller in interface builder, and after reconnecting it, the screen comes up as blank now. It works fine when I simulate the screen in interface builder, but not when running in xcode. Here's the code for the view controller:

//
//  FunctionMachineViewController.h
//  FunctionMachine
//
//  Created by Kameron Schadt on 5/24/11.
//  Copyright 2011 Willamette University. All rights reserved.
//

#import <UIKit/UIKit.h>

@interface FunctionMachineViewController : UIViewController {

IBOutlet UITextField* equation;
IBOutlet UISlider* startLevel;
IBOutlet UITextView* startLevelNumber;

}

- (IBAction) startOnePlayer:(id)sender;
- (IBAction) startTwoPlayer:(id)sender startingEquation:(NSString*)equationUsed;
- (IBAction) sliderValueChanged:(UISlider*)sender;

@property(nonatomic, retain) IBOutlet UISlider* startLevel;
@property(nonatomic, retain) IBOutlet UITextField* equation;
@property(nonatomic, retain) IBOutlet UITextView* startLevelNumber;

@end


//
//  FunctionMachineViewController.m
//  FunctionMachine
//
//  Created by Kameron Schadt on 5/24/11.
//  Copyright 2011 Willamette University. All rights reserved.
//

#import "FunctionMachineViewController.h"
#import "GameViewController.h"

@implementation FunctionMachineViewController

@synthesize equation, startLevel, startLevelNumber;

- (IBAction)sliderValueChanged:(UISlider*)sender {
[startLevelNumber setText:[NSString stringWithFormat:@" %.1f", [sender value]]];
}

-(IBAction)startOnePlayer:(id)sender
{
GameViewController* GameView = [[GameViewController alloc] initWithNibName:nil bundle:nil];
[GameView isOnePlayer:YES];
[self presentModalViewController:GameView animated:YES];
}

-(IBAction)startTwoPlayer:(id)sender startingEquation:(NSString*)equationUsed
{
GameViewController* GameView = [[GameViewController alloc] initWithNibName:nil bundle:nil];
[GameView isOnePlayer:NO];
[self presentModalViewController:GameView animated:YES];
}

- (void)viewDidLoad {
[super viewDidLoad];
}


// Override to allow orientations other than the default portrait orientation.
- (BOOL)shouldAutorotateToInterfaceOrientation:    (UIInterfaceOrientation)interfaceOrientation {
return YES;
}

- (void)didReceiveMemoryWarning {
// Releases the view if it doesn't have a superview.
[super didReceiveMemoryWarning];

// Release any cached data, images, etc that aren't in use.
}

- (void)viewDidUnload {
// Release any retained subviews of the main view.
// e.g. self.myOutlet = nil;
}


- (void)dealloc {
[super dealloc];
}

@end

I didn't really see any problem here, so I'm assuming it has something to do with me reconnecting the view controller to the view. I don't have an actual view file that I'm using, just the viewcontroller. Can anybody help?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

反差帅 2024-11-16 11:23:17

检查“Supporting Files”文件夹中 [YourApp]-info.plist 中“Main nib file base name”的设置 - 如果您更改了根视图控制器的名称,则可能需要将此处的名称更改为出色地。

Check the setting of "Main nib file base name" in [YourApp]-info.plist, in the "Supporting Files" folder – if you've changed the name of your root view controller, you may need to change the name here as well.

风为裳 2024-11-16 11:23:17

由于某些奇怪的原因,我的应用程序委托的引用插座已断开连接。

尝试使用应用程序委托的连接检查器(最右侧菜单)创建从委托到文件所有者的引用出口。

For some odd reason my Referencing outlet for the App Delegate was disconnected.

Try creating a referencing outlet from delegate to File's Owner using the connections inspector (farthest right menu) for your App Delegate.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文