崩溃的数学应用程序

时间:2011-01-25 01:11:20

标签: iphone ios4

我正在制作一个简单的数学加法应用程序,Xcode表示它构建正确,但应用程序不会在模拟器或我的设备上打开。这是一个基于winow的应用程序,但我手动添加UITabBarController

这是我的AreaViewController.h所说的

#import <UIKit/UIKit.h>


@interface AreaViewController : UIViewController {
  <snipped ivars>
}

@property (retain, nonatomic) UITextField *add11;
@property (retain, nonatomic) UITextField *add12;
@property (retain, nonatomic) UITextField *add13;
@property (retain, nonatomic) UITextField *add21;
@property (retain, nonatomic) UITextField *add22;
@property (retain, nonatomic) UITextField *add23;
@property (retain, nonatomic) UITextField *add31;
@property (retain, nonatomic) UITextField *add32;
@property (retain, nonatomic) UITextField *add33;
@property (retain, nonatomic) UILabel *add1Result;
@property (retain, nonatomic) UILabel *add2Result;
@property (retain, nonatomic) UILabel *add3Result;

-(IBAction)calculate:(id)sender;
-(IBAction)hideKeyboard:(id)sender;

@end

我的AreaViewController.m

#import "AreaViewController.h"


@implementation AreaViewController

@synthesize add11, add12, add13;
@synthesize add21, add22, add23;
@synthesize add31, add32, add33;
@synthesize add1Result, add2Result, add3Result;

-(IBAction)calculate:(id)sender {
 float floatAdd1Result=[add11.text floatValue]+[add12.text floatValue]+[add13.text floatValue];
 float floatAdd2Result=[add21.text floatValue]+[add22.text floatValue]+[add23.text floatValue];
 float floatAdd3Result=[add31.text floatValue]+[add32.text floatValue]+[add33.text floatValue];

 add1Result.text=[NSString stringWithFormat:@"%1.2f",floatAdd1Result];
 add2Result.text=[NSString stringWithFormat:@"%1.2f",floatAdd2Result];
 add3Result.text=[NSString stringWithFormat:@"%1.2f",floatAdd3Result];
}

-(IBAction)hideKeyboard:(id)sender {
 [add11 resignFirstResponder];
 [add12 resignFirstResponder];
 [add13 resignFirstResponder];
 [add21 resignFirstResponder];
 [add22 resignFirstResponder];
 [add23 resignFirstResponder];
 [add31 resignFirstResponder];
 [add32 resignFirstResponder];
 [add33 resignFirstResponder];
}    

- (void)dealloc {
 [add11 release];
 [add12 release];
 [add13 release];
 [add21 release];
 [add22 release];
 [add23 release];
 [add31 release];
 [add32 release];
 [add33 release];
 [add1Result release];
 [add2Result release];
 [add2Result release];
 [super dealloc];
}


@end

我的控制台说:

[Session started at 2011-01-24 18:33:13 -0600.]

WARNING: Falling back to active SDK directory at: /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.0.sdk

<snip>
This GDB was configured as "--host=i386-apple-darwin --target=arm-apple-darwin".tty /dev/ttys004
Loading program into debugger…
Program loaded.
target remote-mobile /tmp/.XcodeGDBRemote-3466-67
Switching to remote-macosx protocol
mem 0x1000 0x3fffffff cache
mem 0x40000000 0xffffffff none
mem 0x00000000 0x0fff none
run
Running…
[Switching to thread 11523]
[Switching to thread 11523]
sharedlibrary apply-load-rules all
continue
warning: UUID mismatch detected with the loaded library - on disk is:
 /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.0.sdk/System/Library/Frameworks/Foundation.framework/Foundation
<snip>
warning: UUID mismatch detected with the loaded library - on disk is:
 /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.0.sdk/System/Library/PrivateFrameworks/MBX2D.framework/MBX2D
Ignoring packet error, continuing...
gdb stack trace around reply contains invalid hex digit:
0   gdb-arm-apple-darwin                0x0018dc33 remote_backtrace_self + 54�
1   gdb-arm-apple-darwin                0x0019081d fromhex + 65�
<snip>
43  gdb-arm-apple-darwin                0x00085592 catch_errors + 78�
44  gdb-arm-apple-darwin                0x0008646b gdb_main + 63�
45  gdb-arm-apple-darwin                0x00001f06 main + 52�
46  gdb-arm-apple-darwin                0x00001e95 start + 53�
recent remote packet log at point of error:
Sent:  [1295915610.545:96] m3757d780,40
Recvd: [1295915610.548:96] 1800000074f9710fa01a33b5bb04c4aeabd6be7d220000803000000000000000000000000c3197080807000000e06c080000000064eaa708c8120000cc688b08
Sent:  [1295915610.548:96] m3757d7c0,40
Recvd: [1295915610.551:96] 

warning: Unable to read symbols from [memory object "/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.0.sdk/System/Library/PrivateFrameworks/MBX2D.framework/MBX2D" at 0x3076a000]: File format not recognized.
warning: Could not read dyld entry: /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.0.sdk/System/Library/PrivateFrameworks/MBX2D.framework/MBX2D from inferior memory at 0x3076a000 with slide 0x0 and length 4294967295.

The Debugger has exited due to signal 15 (SIGTERM).The Debugger has exited due to signal 15 (SIGTERM).

[Session started at 2011-01-24 18:36:46 -0600.]
Terminating in response to SpringBoard's termination.

Dave DeLong编辑:

我尽可能地减少了代码。我已经删除了实例变量声明并留下了@property语句,折叠了@synthesize行,简化了代码,删除了死方法,剪掉了很长的重复内容等等。我还删除了代码下载链接,因为它仅链接到.xcodeproj文件的压缩副本(但没有源)。

3 个答案:

答案 0 :(得分:0)

你在动态加载器中死亡的事实似乎暗示你的二进制文件没有正确构建。当我开始遇到奇怪的错误时,我发现最好清理整个项目并从头开始重新构建所有内容。要清理,只需转到Build菜单并选择“Clean All Targets”。完成后,尝试再次构建和运行。

答案 1 :(得分:0)

有时这对我有帮助:

  1. 重启设备
  2. 重启Xcode
  3. 清理所有构建并清理xcode缓存
  4. 删除所有断点...在删除项目中的所有断点后,我看到Xcode再次变得疯狂和正常。有时候Xcode失去了弹珠,你必须帮助它。
  5. 作为一个根本措施,右键单击xcodeproj文件,选择Show Package Contents并删除该包内的所有内容,pbxproj文件除外。然后重新打开项目。
  6. 在做#5之前,先备份你的项目......以防万一。

    编辑:

    您的磁盘或Xcode可能有问题。使用磁盘工具并验证/修复磁盘上的权限,删除然后从新版本重新安装Xcode / SDk。看看是否有效。

答案 2 :(得分:0)

尝试:

  1. 拔掉手机
  2. 从手机中删除应用程序(使用手指放在图标上的标准方法,直到出现'X')
  3. 删除后,重新插入并重新构建
  4. 该应用程序再次在设备上崩溃,但此次崩溃后,再次拔下电源并直接从手机上运行