You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
94 lines
2.0 KiB
94 lines
2.0 KiB
// |
|
// TYTextStorageProtocol.h |
|
// TYAttributedLabelDemo |
|
// |
|
// Created by tanyang on 15/4/8. |
|
// Copyright (c) 2015年 tanyang. All rights reserved. |
|
// |
|
|
|
#import <UIKit/UIKit.h> |
|
|
|
typedef enum : NSUInteger { |
|
TYDrawAlignmentTop, // 底部齐平 向上伸展 |
|
TYDrawAlignmentCenter, // 中心齐平 |
|
TYDrawAlignmentBottom, // 顶部齐平 向下伸展 |
|
} TYDrawAlignment; |
|
|
|
extern NSString *const kTYTextRunAttributedName; |
|
|
|
@protocol TYTextStorageProtocol <NSObject> |
|
@required |
|
|
|
/** |
|
* 范围(如果是appendStorage,range只针对追加的文本) |
|
*/ |
|
@property (nonatomic,assign) NSRange range; |
|
|
|
/** |
|
* 文本中实际位置,因为某些文本被替换,会导致位置偏移 |
|
*/ |
|
@property (nonatomic,assign) NSRange realRange; |
|
|
|
/** |
|
* 添加属性到全文attributedString addTextStorage调用 |
|
* |
|
* @param attributedString 属性字符串 |
|
*/ |
|
- (void)addTextStorageWithAttributedString:(NSMutableAttributedString *)attributedString; |
|
|
|
@end |
|
|
|
@protocol TYAppendTextStorageProtocol <TYTextStorageProtocol> |
|
|
|
@required |
|
|
|
/** |
|
* 追加attributedString属性 appendTextStorage调用 |
|
* |
|
* @return 返回需要追加的attributedString属性 |
|
*/ |
|
- (NSAttributedString *)appendTextStorageAttributedString; |
|
|
|
@end |
|
|
|
@protocol TYLinkStorageProtocol <TYAppendTextStorageProtocol> |
|
|
|
@property (nonatomic, strong) UIColor *textColor; // 文本颜色 |
|
|
|
@end |
|
|
|
@protocol TYDrawStorageProtocol <TYAppendTextStorageProtocol> |
|
|
|
@property (nonatomic, assign) UIEdgeInsets margin; // 四周间距 |
|
|
|
/** |
|
* 添加View 或 绘画 到该区域 |
|
* |
|
* @param rect 绘画区域 |
|
*/ |
|
- (void)drawStorageWithRect:(CGRect)rect; |
|
|
|
/** |
|
* 设置字体高度 当前字符串替换数 |
|
*/ |
|
- (void)setTextfontAscent:(CGFloat)ascent descent:(CGFloat)descent; |
|
|
|
// 当前替换字符数 |
|
- (void)currentReplacedStringNum:(NSInteger)replacedStringNum; |
|
|
|
@end |
|
|
|
@protocol TYViewStorageProtocol <NSObject> |
|
|
|
/** |
|
* 设置所属的view |
|
*/ |
|
- (void)setOwnerView:(UIView *)ownerView; |
|
|
|
/** |
|
* 不会把你绘画出来 |
|
*/ |
|
- (void)didNotDrawRun; |
|
|
|
@end |
|
|
|
|