我正在尝试获取\n
UITextView 中每个字符的 y 位置,以便我可以将行号与 UITextView 对齐以获得准确的行号。我想要做的是获取每次出现的 Y 坐标的数组\n
。
目前,我可以获得当前单词的 CGSize,但我不太确定如何调整它以获得特定单词每次出现的 Y 坐标。
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
{
NSRange aRange = self.editorText.selectedRange;
if(range.location<self.editorText.text.length)
{
NSString * firstHalfString = [self.editorText.text substringToIndex:range.location];
NSString *temp = @"s";
CGSize s1 = [temp sizeWithFont:[UIFont systemFontOfSize:15]
constrainedToSize:CGSizeMake(self.view.bounds.size.width - 40, MAXFLOAT) // - 40 For cell padding
lineBreakMode:UILineBreakModeWordWrap]; // enter you textview font size
CGSize s = [firstHalfString sizeWithFont:[UIFont systemFontOfSize:15]
constrainedToSize:CGSizeMake(self.view.bounds.size.width - 40, MAXFLOAT) // - 40 For cell padding
lineBreakMode:UILineBreakModeWordWrap]; // enter you textview font size
//Here is the frame of your word in text view.
NSLog(@"xcoordinate=%f, ycoordinate =%f, width=%f,height=%f",s.width,s.height,s1.width,s1.height);
CGRect rectforword = CGRectMake(s.width, s.height, s1.width, s1.height);
// rectforword is rect of yourword
}
else
{
// Do what ever you want to do
}
return YES;
}
我不确定的主要部分是以我可以检索其坐标的方式获取角色的每次出现。
有没有办法做到这一点?或者我有没有更简单的方法来实现行号?