【问题标题】:iPhone views programmingiPhone 观看编程
【发布时间】:2010-01-15 07:48:16
【问题描述】:

我正在尝试在我的应用中使用 2 个视图,在我的主屏幕上使用 2 个按钮。对于这些按钮中的每一个,我都创建了一个新类并将以下代码添加到我的视图控制器中:

ViewController.h:

#import <UIKit/UIKit.h>
@interface Gallerie2ViewController : UIViewController {
}
- (IBAction)switch2class1:(id)sender; // 1st button
- (IBAction)switch2class2:(id)sender; // 2nd one
@end

ViewController.m:

#import "ViewController.h"
#import "class1.h"
#import "class2.h"

@implementation ViewController

- (IBAction)switch2class1:(id)sender
{
    Class1 *Class1view = [[Class1 alloc] initWithNibName:nil bundle:nil];
    [self presentModalViewController:Class1view animated:YES];
}

- (IBAction)switch2class2:(id)sender
{
    Class2 *Class2View = [[Class2 alloc] initWithNibName:nil bundle:nil];
    [self presentModalViewController:Class2View animated:YES];
}

Class1.h/.m 与 Class2.h/.m 具有相同的内容,但是在运行我的应用程序时,第一个按钮工作正常(打开 Class1 视图)但第二个按钮使应用程序崩溃!

我做错了什么?

【问题讨论】:

  • 日志说什么?在xcode中,运行->控制台,然后点击清除控制台,然后构建运行,崩溃后将代码粘贴到这里
  • 一个与崩溃无关的小问题:看起来 Class1 和 Class2 是 UIViewController 的子类,所以如果它读取“UIViewController* controller = ...”而不是“Class2 *Class2View = ...”

标签: iphone button crash


【解决方案1】:

好的,我检查了控制台(感谢 Sam Jarman)并找到了这个问题的原因:我的一个类(Class2)被命名为 List。因此它使用 List.h 和 List.m 编译,但 List.h 已经定义(可能是 SDK 的一部分)。它在编译时没有对冲突产生任何错误/警告,但是好吧..我已将 list.h 重命名为 cat.h 并且现在可以正常工作了!

谢谢!

【讨论】:

  • 很高兴您如此迅速地解决了问题。继续并将其标记为已接受的答案。除了您将获得额外的声誉之外,它还有助于社区和网站:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-09-25
  • 1970-01-01
  • 1970-01-01
  • 2013-10-19
  • 1970-01-01
相关资源
最近更新 更多