我在Xcode中得到一個錯誤,提示「whatEverVariable未聲明」這是在.m文件中發生的,也是類本身之外的情況。我已經在.h文件的大括號中聲明瞭變量,並使用@property和@synthesize來訪問該變量。不過,我有時會在.m文件中得到上述錯誤,甚至在其他類中我已經#imported包含該變量的類。我在這裏還是缺少一些有關Objective-C的內容?我想我所問的是,爲什麼如果宣佈這些事情就不會宣佈。爲什麼編譯器說我沒有聲明我的變量?
而且我得到「按鈕可能不響應‘的setTitle’的,以及有這種被棄用錯誤或某事‘的setTitle:forState:’因爲我不想使用
我會發表一個例子,但我真的認爲我錯過了一些明顯的事情在這裏。有沒有人有什麼想法會導致錯誤?對不起,這是一般的,但我必須是一個白癡或什麼?
這是說「picturesInArray未申報」
#import <Foundation/Foundation.h>
@interface Pictures : NSObject {
NSMutableArray *picturesInArray;
}
@property (nonatomic, retain) NSMutableArray *picturesInArray;
-(IBAction)pictureButtonPressed:(id)sender;
@end
#import "Pictures.h"
@implementation Pictures
@synthesize picturesInArray;
-(IBAction)pictureButtonPressed:(id)sender {
if (pictureIndex >= [picturesInArray count] || pictureIndex < 0) {
pictureIndex = 0;
[imageView setImage:[picturesInArray objectAtIndex:pictureIndex]];
[imageView setNeedsDisplay];
}
}
我相信你缺少一些明顯的東西,但很難準確地分辨出你在沒有看到任何代碼的情況下犯的錯誤。 – Chuck 2009-12-13 19:50:57
您還應該在標題中發佈問題摘要。你能想象登錄到SO,頭版有50條條目都會說「我有問題」。 – 2009-12-13 20:01:26
您必須在實現塊的末尾錯過@end。顯然,你並沒有顯示整個代碼。可以爲我們提供這個課程的完整代碼嗎?否則,剝離所有冗餘變量的當前樣本,並嘗試僅在定義了picturesInArray的情況下對其進行編譯。 – 2009-12-13 21:59:20