我是Objective-C的新手,尽管我在Android方面非常出色。我正在尝试调用一个方法,但它让我“首次使用函数”。我知道我犯了一个愚蠢的错误,但专家可以轻易搞清楚。
RootViewController.h
#import <UIKit/UIKit.h>
#import "ContentViewController.h"
@interface RootViewController : UITableViewController {
ContentViewController *contentViewController;
}
@property (nonatomic, retain) ContentViewController *contentViewController;
- (NSString*)getContentFileName:(NSString*)title; //<--- This function declartion
@end
RootViewController.m
#import "RootViewController.h"
#import "HAWATAppDelegate.h"
#import "ContentViewController.h"
@implementation RootViewController
@synthesize contentViewController;
...
more methods
...
#pragma mark -
#pragma mark Table view delegate
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
HAWATAppDelegate *appDelegate = (HAWATAppDelegate *)[[UIApplication sharedApplication] delegate];
NSString *title = (NSString *) [appDelegate.titles objectAtIndex:indexPath.row];
NSString *fileName = getContentFileName:title; //<--- Here is the error
...
}
- (NSString*) getContentFileName:(NSString*)title {
return [title lowercaseString];
}
@end
我必须要有一件简单的事情。请告诉我。提前谢谢。
答案 0 :(得分:5)
OMG !! 那应该是[self getContentFileName:title];
答案 1 :(得分:1)
你正在调用方法错误。 Objective-C中的调用方法采用以下形式:
[object selectorWithArgument:foo bar:baz];
所以带错误的行应为:
NSString *fileName = [self getContentFileName:title]; //<--- Here is the error