From 0ad12965978dacc189e0f41e5d93901d8aec3dc6 Mon Sep 17 00:00:00 2001
From: zhenglibao <zhenglibao@kanzhun.com>
Date: Tue, 2 Jun 2020 14:03:59 +0800
Subject: [PATCH] =?UTF-8?q?UILabel=E5=A2=9E=E5=8A=A0=E7=82=B9=E5=87=BB?=
 =?UTF-8?q?=E6=B5=8B=E8=AF=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 FlexLib/Classes/ViewExt/UILabel+Flex.h | 5 +++++
 FlexLib/Classes/ViewExt/UILabel+Flex.m | 6 ++++++
 2 files changed, 11 insertions(+)

diff --git a/FlexLib/Classes/ViewExt/UILabel+Flex.h b/FlexLib/Classes/ViewExt/UILabel+Flex.h
index 431a33c..a6ff463 100644
--- a/FlexLib/Classes/ViewExt/UILabel+Flex.h
+++ b/FlexLib/Classes/ViewExt/UILabel+Flex.h
@@ -32,5 +32,10 @@
 
 -(void)updateAttributeText;
 
+/**
+ * 返回点对应的字符索引,pt为UILabel自身坐标系的点
+ */
+-(NSUInteger)charIndexAtPoint:(CGPoint)pt;
+
 @end
 
diff --git a/FlexLib/Classes/ViewExt/UILabel+Flex.m b/FlexLib/Classes/ViewExt/UILabel+Flex.m
index f28b894..47fc214 100644
--- a/FlexLib/Classes/ViewExt/UILabel+Flex.m
+++ b/FlexLib/Classes/ViewExt/UILabel+Flex.m
@@ -73,6 +73,12 @@ - (NSUInteger)charIndexOfTap:(UITapGestureRecognizer *)recognizer
 {
     CGPoint location = [recognizer locationInView:self];
     
+    return [self charIndexAtPoint:location];
+}
+
+-(NSUInteger)charIndexAtPoint:(CGPoint)location
+{
+    
     NSTextStorage *textStorage = [[NSTextStorage alloc] initWithAttributedString:self.attributedText];
     NSLayoutManager *layoutManager = [[NSLayoutManager alloc] init];
     [textStorage addLayoutManager:layoutManager];