我的源代码不使用storyboard或xib。它包含一个UITableView,单元格使用标准的cell.textlabel。
我想要的是使用自定义TableViewCell,通常我会创建一个UITableViewCell类并在故事板中连接它们,但我不能在这里连接它们,因为它不使用storyboard或xib。
我有以下UITableViewClass
@interface chatCell : UITableViewCell
@property(nonatomic, weak) IBOutlet UIImageView *homeTeamImage;
@property(nonatomic, weak) IBOutlet UILabel *homeTeamLabel;
@property(nonatomic, weak) IBOutlet UIImageView *awayTeamImage;
@property(nonatomic, weak) IBOutlet UILabel *awayTeamLabel;
@end
如何将它们放在TableViewCell中并将它们连接到属性?
所以我可以开始使用
了cell.homeTeamImage
cell.homeTeamLabel
cell.awayTeamImage
cell.awayTeamLabel
答案 0 :(得分:1)
您不需要使用IBOutlet,因为您不想使用IB中的属性
@interface chatCell : UITableViewCell
{
UIImageView *homeTeamImage;
UILabel *homeTeamLabel;
UIImageView *awayTeamImage;
UILabel *awayTeamLabel;
}
@property(nonatomic, weak) UIImageView *homeTeamImage;
@property(nonatomic, weak) UILabel *homeTeamLabel;
@property(nonatomic, weak) UIImageView *awayTeamImage;
@property(nonatomic, weak) UILabel *awayTeamLabel;
@end
并且不要忘记
@synthesize homeTeamImage, ...;
在您的实施文件中。
答案 1 :(得分:0)
您可以覆盖- (UITableViewCell *)cellForRowAtIndexPath:(NSIndexPath *)indexPath。而不是返回标准的UITableViewCell,你可以返回你的
- (UITableViewCell *)cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
chatCell c = [[chatCell alloc] init];
return c;
}
您不需要IBOutlet关键字:它不是类型,只有在使用故事板时才由xcode使用。我认为如果没有故事板,您应该将属性更改为强指针,因为没有其他人强烈指向它们,因此它们将被删除。
如果您使用xcode 5,则@synthesize不是必需的。仅当您覆盖属性的setter和getter时才需要它。
答案 2 :(得分:0)
请参阅“适用于iOS的表格视图编程指南”中的Programmatically Adding Subviews to a Cell’s Content View。在此示例中,单元格在tableView:cellForRowAtIndexPath:
中创建,但您可以在UITableViewCell子类中使用相同的方法(在单元格的内容视图上添加视图)。
答案 3 :(得分:0)
@interface chatCell : UITableViewCell
{
UIImageView *homeTeamImage;
UILabel *homeTeamLabel;
UIImageView *awayTeamImage;
UILabel *awayTeamLabel;
}
@property(nonatomic, weak) UIImageView *homeTeamImage;
@property(nonatomic, weak) UILabel *homeTeamLabel;
@property(nonatomic, weak) UIImageView *awayTeamImage;
@property(nonatomic, weak) UILabel *awayTeamLabel;
@end
and don't forget to
enter code here
@synthesize "All properties"