简单的iPhone应用程序中的SIGABRT

时间:2011-11-21 12:47:33

标签: objective-c ios

我正在做一个非常简单的应用程序,它有两个按钮,一个标签和一个文本字段;第一个按钮将文本字段的文本复制到标签,第二个按钮清除两者。当我执行时,我有这个错误: 收到的节目信号:“SIGABRT”

问题出在哪里?

感谢。

ViewController.m:

@synthesize myInput, myLabel, button1, button2;

- (IBAction)boton1Pressed:(id)sender {
[self.myLabel setText:[self.myInput text]]; 
}

- (IBAction) boton2Pressed:(id)sender {
[self.myLabel setText:[NSString stringWithString:@""]];
}

ViewController.h:

@interface ViewController : UIViewController
@property (retain, nonatomic) IBOutlet UILabel *myLabel;
@property (retain, nonatomic) IBOutlet UITextField *myInput;

- (IBAction)boton1Pressed:(id)sender;
- (IBAction)boton2Pressed:(id)sender;
(...)

4 个答案:

答案 0 :(得分:1)

我认为错误不在代码中。

检查文件.xib与ViewController的出口的连接。

您可能遇到任何与旧版本,您已创建或意外删除的插件的连接问题。

此致

天使。

答案 1 :(得分:0)

您还没有在ViewController.m文件中合成访问者。或者至少,不是我们从发布的代码中看到的。

@synthesize myLabel, myInput;

答案 2 :(得分:0)

这是代码......并且不要忘记将它们与Xib链接....我已经测试过它你不会忘记接受它... :)

#import <UIKit/UIKit.h>

@interface MayankViewController : UIViewController {

    IBOutlet UIButton *btn1,*btn2;
    IBOutlet UILabel *lbl;
    IBOutlet UITextField *txtField;
}

@property(nonatomic,retain) IBOutlet UIButton *btn1;
@property(nonatomic,retain) IBOutlet UIButton *btn2;
@property(nonatomic,retain) IBOutlet UILabel *lbl;
@property(nonatomic,retain) IBOutlet UITextField *txtField;

-(IBAction) onTapBtn1;
-(IBAction) onTapBtn2;
@end







#import "MayankViewController.h"

@implementation MayankViewController

@synthesize btn1,btn2,lbl,txtField;

// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad {
    [super viewDidLoad];
}

-(IBAction) onTapBtn1
{
    lbl.text = txtField.text;
}

-(IBAction) onTapBtn2
{
    lbl.text = @"";
    txtField.text = @"";
}

- (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];
    [btn1 release];
    [btn2 release];
    [lbl release];
    [txtField release];
}

@end

答案 3 :(得分:0)

@synthesize根本不是问题。如果你不从其他类访问该对象,那么需要合成getter和setter?您也不需要每次都使用“自我”。这一行可能是错误的:

  

[self.myInput text]

而是使用myInput.text。