我有一个tableview,我想使用默认的cell.imageView来显示一个字体很棒的图像(将根据显示的核心数据对象中的字符串确定)。 我正在使用ios-Fontawesome
基本上我正在尝试使用我想要的FA图标建立FAImageview(UIImage的子类),然后使单元格ImageView显示它。
下面的代码不起作用,但我怀疑这应该是允许的,因为它们是从相同类型继承的。
然而,我对铸造的理解也非常不完整。 非常感谢任何帮助。
我的代码(在我的cellForRowAtIndexPath中)如下所示。
FAImageView *faImageView = [[FAImageView alloc] initWithFrame:CGRectMake(0.f, 0.f, 100.f, 100.f)];
//FAImageView *faImageView = [[FAImageView alloc] init];
faImageView.image = nil;
[faImageView setDefaultIconIdentifier:@"fa-github"];
cell.imageView.image = faImageView.image;
编辑: setDefaultIconIdentifier如下所示:
- (void)setDefaultIconIdentifier:(NSString*)defaultIconIdentifier
{
self.defaultIcon = [NSString fontAwesomeEnumForIconIdentifier:defaultIconIdentifier];
}
答案 0 :(得分:1)
查看库代码,您的假设是错误的。
字体真棒根本不用于图像,它适用于字体。 UIImageView
实际上没有图像集。它内部有一个标签,设置图标会使标签中的文字发生变化。
这就是为什么你的代码无效 - faImageView.image
应该是空的。
我个人认为这是一个非常糟糕的图书馆设计。
而不是使用单元格的默认imageView
,更好的解决方案是[cell.contentView addSubview:faImageView]
并设置其框架。
答案 1 :(得分:0)
更改此行:
cell.imageView.image = faImageView.image;
对此:
cell.imageView = faImageView;
或者这个:
[cell.imageView addSubview:faImageView];
问题是你的FAImageView实例没有任何图像,你的faImageView.image等于nil,你可以试试这个:
NSLog(@"Whats is my image:%@",[faImageView.image description]);