首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >initWithTitle导致实现不完整

initWithTitle导致实现不完整
EN

Stack Overflow用户
提问于 2012-12-06 05:09:32
回答 1查看 110关注 0票数 2

因此,我有一个包含以下代码的PersonDoc.h文件:

代码语言:javascript
复制
#import <Foundation/Foundation.h>

@class PersonData;

@interface PersonDoc : NSObject

@property (strong) PersonData *data;
@property (strong) UIImage *thumbImage;

- (id)initWithTitle:(NSString*)name gift:(NSString*)gift thumbImage:(UIImage *)thumbImage;

然而,我的PersonDoc.m文件总是给我一个警告符号,告诉我实现不完整。下面是.m代码:

代码语言:javascript
复制
 #import "PersonDoc.h"
 #import "PersonData.h"

 @implementation PersonDoc

 @synthesize data = _data;
 @synthesize thumbImage = _thumbImage;


- (id)initWithTitle:(NSString*)title gift:(NSString *)gift thumbImage:(UIImage    *)thumbImage fullImage:(UIImage *)fullImage {
if ((self = [super init])) {
    self.data = [[PersonData alloc] initWithTitle:title gift:gift];
    self.thumbImage = thumbImage;
}
return self;
}
@end

PersonData.h代码:#import

代码语言:javascript
复制
@interface PersonData : NSObject

@property (strong) NSString *name;
@property (assign) NSString *gift;

- (id)initWithTitle:(NSString*)name gift:(NSString*)gift;

@end

PersonData.m代码:

代码语言:javascript
复制
#import "PersonData.h"

@implementation PersonData

@synthesize name = _name;
@synthesize gift = _gift;

- (id)initWithTitle:(NSString*)name gift:(NSString*)gift {
    if ((self = [super init])) {
        self.name = name;
        self.gift = gift;
    }
return self;
}
@end

在我的视图控制器中,我收到一个错误,说在PersonDoc类型的对象上找不到属性名称和礼物。以下代码在我的ViewController中:

代码语言:javascript
复制
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:           (NSIndexPath *)indexPath
 {
// Configure the cell...
// Create the cell
UITableViewCell *cell;
cell = [tableView dequeueReusableCellWithIdentifier:@"PersonCell"];

if (!cell) {
    cell =  [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"PersonCell"];
}


PersonDoc *person = [self.people objectAtIndex:indexPath.row];
cell.textLabel.text = person.name;
cell.detailTextLabel.text = person.gift;
cell.imageView.image = person.thumbImage;

return cell;
} 

我知道这与我的.h文件中的initWithTitle代码有关,所以谁能告诉我如何对我的.h和.m文件执行initWithTitle的正确方法?谢谢,我真的很感谢大家的帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-12-06 05:11:47

头部和实现中的initWithTitle根据您发布的代码具有不同的签名。解决这个问题,你的警告就会消失

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13732498

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档