ios - Xcode 使用未声明的标识符

标签 ios xcode identifier

我是编码新手,有一些基本知识,但我正在根据教程构建我的第一个应用程序,遇到一个我无法解决的问题,经过几天的研究后我想问一下。在 View 中初始化对象时,我的实现文件出现错误。 它说使用未声明的标识符。任何帮助将不胜感激。

这是我的 View Controller .m

#import "ViewController.h"





@implementation ViewController




- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.

    NSLog(@"titleLabel.text = %@", self.titleLabel.text);

    self.bandObject = [[BandObject alloc] init];
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

-(BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
    return YES;
}

-(BOOL)textFieldShouldReturn:(UITextField *)textField
{
    self.bandObject.name = self.nameTextField.text;
    [self.nameTextField resignFirstResponder];
    return YES;
}

-(BOOL)textFieldShouldEndEditing:(UITextField *)textField
{
    self.bandObject.name =self.nameTextField.text;
    [self saveBandObject];
    [self.nameTextField resignFirstResponder];
    return YES;
}

-(BOOL)textViewShouldBeginEditing:(UITextView *)textView
{
    self.saveNotesButton.enabled = YES;
    return YES;
}

-(BOOL)textViewShouldEndEditing:(UITextView *)textView
{
    self.bandObject.notes = self.notesTextView.text;
    [self.notesTextView resignFirstResponder];
    self.saveNotesButton.enabled = NO;
    return YES;
}

- (IBAction)saveNotesButtonTouched:(id)sender
{
    [self textViewShouldEndEditing:self.notesTextView];
}

- (IBAction)ratingStepperValueChanged:(id)sender
{
    self.ratingValueLabel.text = [NSString stringWithFormat:@"%g",self.ratingStepper.value];
    self.bandObject.rating = (int)self.ratingStepper.value;
}


- (IBAction)tourStatusSegmentedControlValueChanged:(id)sender
{
    self.bandObject.touringStatus = self.touringStatusSegmentedControl.selectedSegmentIndex;
}

- (IBAction)haveSeenLiveSwitchValueChanged:(id)sender
{
    self.bandObject.haveSeenLive = self.haveSeenLiveSwitch.on;
}

@end

这是我的.h

#import <UIKit/UIKit.h>
#import "WBABand.h"


@interface ViewController : UIViewController <UITextFieldDelegate, UITextViewDelegate>

@property (nonatomic, strong) WBABand *bandObject;
@property (nonatomic, weak) IBOutlet UILabel *titleLabel;
@property (nonatomic, weak) IBOutlet UITextField *nameTextField;
@property (nonatomic, weak) IBOutlet UITextView *notesTextView;
@property (nonatomic, weak) IBOutlet UIButton *saveNotesButton;
@property (nonatomic, weak) IBOutlet UIStepper *ratingStepper;
@property (nonatomic, weak) IBOutlet UILabel *ratingValueLabel;
@property (nonatomic, weak) IBOutlet UISegmentedControl *touringStatusSegmentedControl;
@property (nonatomic, weak) IBOutlet UISwitch *haveSeenLiveSwitch;

- (IBAction)saveNotesButtonTouched:(id)sender;
- (IBAction)ratingStepperValueChanged:(id)sender;
- (IBAction)tourStatusSegmentedControlValueChanged:(id)sender;
- (IBAction)haveSeenLiveSwitchValueChanged:(id)sender;



@end

最佳答案

这是因为您的 .h 中有一个名为 WBABand 的对象。在您的 .m 中,您正在初始化一个不存在的 BandObject

改变这个[[BandObject alloc] init];

到这个[[WBABand alloc] init];

关于ios - Xcode 使用未声明的标识符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28820313/

相关文章:

html - 如何在 WebView 中隐藏滚动条?

ios - Rails API 与 NSDate - 比较日期时的精度问题

objective-c - NSArray 删除类型的最后一个对象?

iphone - 自定义 UI slider ,缩略图大小问题

ios - xcode 4.2 Storyboard标识符

ios - NSString decimalValue 方法

objective-c - 用于假人的Objective-C:如何在NSDictionary内部循环浏览NSDictionary?

objective-c - Xcode项目中的.c文件如何使用/实现?

我不明白的 C++ 错误 : syntax missing ';' before identifier

Javascript:如果 'abstract' 是保留字,为什么我仍然可以将它用作标识符?