filesbox/app/filesbox_ios/FilesBox/Pods/YBAttributeTextTapAction/README.md
2023-09-21 10:53:23 +08:00

77 lines
3.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# YBAttributeTextTapAction
* 一行代码添加文本点击事件
# 效果图
![(演示效果)](https://lyb5834.github.io/Images/attributeTapAction.gif)
# Swfit版本最新版还未更新
https://github.com/lyb5834/YBAttributeTextTapForSwfit.git
# 使用方法
* `#import "UILabel+YBAttributeTextTapAction.h"`
* 先设置 `label.attributedText = `
* 有2种回调方法第一种是用代理回调第二种是用block回调
* 代理回调
* 1.传入要点击的字符串数组
```
[label yb_addAttributeTapActionWithStrings:@[@"xxx",@"xxx"] delegate:self];
```
* 2.传入要点击的range数组
```
[label yb_addAttributeTapActionWithRanges:@[NSStringFromRange(range1),NSStringFromRange(range2)] delegate:self]
```
* block回调
* 1.传入要点击的字符串数组
```
[label yb_addAttributeTapActionWithStrings:@[@"xxx",@"xxx"] tapClicked:^(UILabel *label,NSString *string, NSRange range,NSInteger index) { coding more... }];
```
* 2.传入要点击的range数组
```
[label yb_addAttributeTapActionWithRanges:@[NSStringFromRange(range1),NSStringFromRange(range2)] tapClicked:^(UILabel *label,NSString *string, NSRange range,NSInteger index) { coding more... }];
```
# CocoaPods支持
* 只需在podfile中输入 `pod 'YBAttributeTextTapAction'` 即可
# V3.0.3版本
* 增加`yb_removeAttributeTapActions`方法可以删除label上所有的附加点击事件一般用于复用的cell防止label上还存在不必要的点击事件
# V3.0.2版本
* 修复了在8.0系统上crash 的bug
# V3.0.1版本
* 修复字符串中有多个"\n"符号时计算不准确的bug
# V3.0.0版本
* 重构计算文字坐标的算法,点击准确率大大提升(再大的文本都不怕啦)
* 重构API回调参数更多
* 增加传入range数组的API可以指定range进行触发
* 增加设置点击高亮色和是否扩大点击区域的API麻麻再也不用担心我手指粗点不到啦
* 重构demo介绍更详细用法更丰富
* 修复一个页面多次调用会相互影响的bug
* 修复在label上添加手势无效的bug
# V2.0.5修复
* 修复内存泄漏
# V2.0.0重大更新
* 修复字体变小时坐标计算不正确导致无法点击的bug
# V2.1.0更新
* 增加点击效果,默认是开启,关闭只需设置`label.enabledTapEffect = NO`即可
# 问题总结
* 因为UILabel的封装有些属性不能实现在此说一下一些提的比较多的问题
* 关于文字排版的正确设置方式,设置`label.textAlignment = NSTextAlignmentCenter`会导致点击失效,正确的设置方法是
```
NSMutableParagraphStyle *sty = [[NSMutableParagraphStyle alloc] init];
sty.alignment = NSTextAlignmentCenter;
[attributedString addAttribute:NSParagraphStyleAttributeName value:sty range:NSMakeRange(0, text.length)];
```
# 版本支持
* `xcode6.0+`
* 如果您在使用本库的过程中发现任何bug或者有更好建议欢迎[@issues](https://github.com/lyb5834/YBAttributeTextTapAction/issues) 或联系本人email lyb5834@126.com