iOS新手試圖從另一個類中拉出數組並獲取錯誤。基本上,我不明白方法和屬性之間的區別,我意識到,所以這可能會幫助我更好地理解這一點。Objective-C:從另一個類調用方法的語法
我已經創建了一個返回數組的方法。我想使用其他類陣列(好像回到在其他語言中值的函數),所以我認爲如下我會做到這一點:
class1
- (id) getTags{
NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:@"Tags"];
fetchRequest.resultType = NSDictionaryResultType;
NSError *error = nil;
NSArray *results = [self.managedObjectContext executeFetchRequest:fetchRequest
error:&error];
NSMutableArray * tags = [[results valueForKey:@"tag"] mutableCopy];
return tags;
}
換句話說,我想用什麼方法返回作爲Objective C中的一種變量稱爲屬性。該方法也在.h文件中,以便它公開。
在2 I類進口類1的頂部,然後嘗試調用方法如下:
NSArray *newarray = [class1 getTags];
但是我得到錯誤「沒有已知的類方法的選擇getTags」
誰能告訴我我做錯了什麼?
謝謝。
我最初試圖NSArray的,但它給了錯誤「矛盾的返回類型」,並在回線之下給了錯誤「返回的NSMutableArray * ____強從具有不兼容結果類型的函數中獲取「。切換到ID擺脫了這兩個錯誤。 – user1904273
您是否使用'NSArray *'作爲返回類型而不是'NSArray'?這是人們第一次學習Obj-C時的常見錯誤。 – Steven