我在项目中有一个实体的详细界面(实际上是“照片”),可能会有评论。如果有评论,屏幕会显示最近的3条评论和“查看全部”按钮。问题在于如何显示这3条评论。(在Android上,我只需使用LinearLayout即可。)根据我的判断,TableView不太适合(由于高度静态),因此我决定创建自定义模板/部分视图CommentView,并将其添加到每个评论的scrollView中。
我创建了一个具有视图和一些子控件(用户照片、用户名、日期、文本)的XIB文件。同时,我创建了从UIView派生出来的CommentView类。文件的所有者设置为CommentView。顶级视图的类也设置为CommentView(我尝试了各种组合)。我从顶级视图(vContent)和所有子视图创建了outlet。
这是CommentView.h:
@interface CommentView : UIView
@property (strong, nonatomic) IBOutlet CommentView *vContent;
@property (weak, nonatomic) IBOutlet UIImageView *ivUserPhoto;
@property (weak, nonatomic) IBOutlet UILabel *lUserName;
@property (weak, nonatomic) IBOutlet UILabel *lCreated;
@property (weak, nonatomic) IBOutlet UILabel *lText;
@end
这是CommentView.m文件:
#import "CommentView.h"
@implementation CommentView
-(void)awakeFromNib {
[[NSBundle mainBundle] loadNibNamed:@"CommentView" owner:self options:nil];
[self addSubview: self.vContent];
}
@end
我尝试在实体的视图中添加注释,但遇到了标题中的错误。这不是我第一次遇到这个问题,但现在我真的不知道问题出在哪里...
错误发生在此行(我从PhotoViewController调用它):
CommentView *commentView = [[[NSBundle mainBundle] loadNibNamed:@"CommentView" owner:self options:nil]objectAtIndex:0];
完整文本: '[ setValue:forUndefinedKey:]: 此类不符合键值编码规范,无法为 ivUserPhoto 设置值。'
非常感谢您的帮助!谢谢!
PhotoViewController
不是一个CommentView
,但在某个地方(可能是你的nib文件)你把它当作了CommentView
来处理。 - Brad Allred