TransformerKit
NSValueTransformer 的基于块的 API,附带大量有用的示例。
NSValueTransformer
对于大多数 iOS 程序员而言可能较为陌生,但在 OS X 开发中却是必不可少的一部分。在 Objective-C API 不再将块参数随意抛来抛去之前,NSValueTransformer
是封装可变功能的首选方法,特别是涉及到绑定时。
NSValueTransformer
使用方便,但设置起来很麻烦。要创建一个值转换器,您必须创建一个子类,实现一些必需的方法,并通过名称注册一个单例实例。
TransformerKit 通过使:NSValueTransformer
的定义和注册变得极为简单而使其重获生机。
NSString * const TTTCapitalizedStringTransformerName = @"TTTCapitalizedStringTransformerName";
[NSValueTransformer registerValueTransformerWithName:TTTCapitalizedStringTransformerName
transformedValueClass:[NSString class]
returningTransformedValueWithBlock:^id(id value) {
return [value capitalizedString];
}];
TransformerKit 与 InflectorKit 和 FormatterKit 有着良好的配合,为操作用户界面内容提供了精心设计的 API。
TransformerKit 还包含了许多方便的转换器,您的应用程序将爱不释手。
字符串转换器
- 首字母大写
- 全部大写
- 全部小写
- 驼峰式
- llamaCase
- snake_case
- train-case
- esreveR* (Reverse)
- Rémövê Dîaçritics (Remove accents and combining marks)
- ट्रांस्लितेराते स्ट्रिंग (Transliterate to Latin)
- 任何有效的 ICU 转换*
图像转换
- PNG表示*
- JPEG表示*
- GIF表示 (macOS)
- TIFF表示 (macOS)
日期转换
JSON数据转换
- JSON转换器*
数据转换 (macOS)
- Base16字符串编码/解码
- Base32字符串编码/解码
- Base64字符串编码/解码
- Base85字符串编码/解码
加密转换 (macOS)
- MD5, SHA-1, SHA-256等摘要
* - 可逆
联系
Mattt (@mattt)
许可
TransformerKit遵循MIT许可协议发布。有关更多信息,请参阅LICENSE文件。