如何在Objective C的NSArray中添加字体真棒图标

Posted

技术标签:

【中文标题】如何在Objective C的NSArray中添加字体真棒图标【英文标题】:How to add font awesome icon in an NSArray in Objective C 【发布时间】:2016-07-12 05:17:36 【问题描述】:

首先我在NSString+FontAwesome.h 中创建了类名NSString+FontAwesome.hNSString+FontAwesome.m,如下方式

@import Foundation;
typedef NS_ENUM(NSUInteger, FaIcon) 
FaMoonO = 0xf186,
    FaArchive = 0xf187
;

@interface NSString (AwesomeString)

//creates a string with the font awesome character
+(NSString*)awesomeIcon:(FaIcon)index;

@end

NSString+FontAwesome.m中的代码是这样的

#import "NSString+FontAwesome.h"
@implementation NSString (AwesomeString)

+(NSString*)awesomeIcon:(FaIcon)index

    return [NSString stringWithFormat:@"%C", (unichar)index];


@end

我正在使用这样的代码作为标签,它可以正常工作。

label.font = [UIFont fontWithName:@"FontAwesome" size:30];
label.textColor =  [UIColor whiteColor];
label.text =  [NSString awesomeIcon:FaBook];

但我想在数组中使用它任何建议。 我的数组代码是这样的。

iconarray =[[NSMutableArray alloc] initWithObjects:[NSString awesomeIcon:FaArchive],nil];

但它没有显示任何东西。如何在数组中添加[UIFont fontWithName:@"FontAwesome" size:30]。 请帮忙..

【问题讨论】:

我认为你不会看到任何东西,因为图标与字体绑定在一起,你只是保存了一个字符串,如果 fontAwesome 字体未设置为标签,则该字符串将不可读。 我也这么认为,但是当我添加 UIFont 时它崩溃了。任何建议 也许你能告诉我们你是如何添加字体的?编辑它并发布一些代码,以便我们更好地理解 你想在数组中使用什么?解释清楚.. @Meet 谢谢它的工作 【参考方案1】:

.h 文件

@import Foundation;
typedef NS_ENUM(NSUInteger, FaIcon) 
FaMoonO = 0xf186,
    FaArchive = 0xf187
;

@interface NSString (AwesomeString)

//creates a string with the font awesome character
+(NSString*)awesomeIcon:(FaIcon)index;

@end

使用自定义 UITableViewCell 然后在表格视图中使用相同的代码

label.font = [UIFont fontWithName:@"FontAwesome" size:30];
label.textColor =  [UIColor whiteColor];
label.text =  [NSString awesomeIcon:FaBook];

用于标签。然后将该标签文本添加到数组中

iconarray =[[NSMutableArray alloc] initWithObjects:[NSString awesomeIcon:FaInfo],[NSString awesomeIcon:FaEye],nil];

【讨论】:

以上是关于如何在Objective C的NSArray中添加字体真棒图标的主要内容,如果未能解决你的问题,请参考以下文章

如何比较在Objective C中从NSArray转换的String?

从Objective C中的NSArray转换时如何比较String?

将 NSArray 对象写入领域数据库 - Objective C

在 Objective-C 中订购和发布 NSArray

如何在 Objective-C 中从 mysql 数据库中填充 NSArray?

Objective C - NSArray 的 indexOfObject:不起作用