Android带下划线的TextView

Android带下划线的TextView,第1张

TextView 的 layout里面包含各种获取字符位置、行数、列数等的方法

layoutgetLineForOffset 获取该字符所在行数

layoutgetLineBounds 获取该行的外包矩形(Rect) 这样 这个字符的顶部Y坐标就是rect的top 底部Y坐标就是rect的bottom

layoutgetPrimaryHorizontal 获取该字符左边的X左边

layoutgetSecondaryHorizontal 获取该字符字符的右边X坐标

其中自定义属性

一开始采用的方法是函数textView:shouldChangeTextInRange:replacementText:来进行判断:

[c-sharp] view plaincopy

//键入Done时,插入换行符,然后执行addBookmark

- (BOOL)textView:(UITextView )textView

shouldChangeTextInRange:(NSRange)range

replacementText:(NSString )text

{

//判断加上输入的字符,是否超过界限

NSString str = [NSString stringWithFormat:@"%@%@", textViewtext, text];

if (strlength > BOOKMARK_WORD_LIMIT)

{

textViewtext = [textViewtext substringToIndex:BOOKMARK_WORD_LIMIT];

return NO;

}

return YES;

}

但在使用中发现该方法在有联想输入的时候,根本无法对联想输入的词进行判断,然后尝试使用textViewDidChange:,验证可行:

[cpp] view plaincopy

/由于联想输入的时候,函数textView:shouldChangeTextInRange:replacementText:无法判断字数,

因此使用textViewDidChange对TextView里面的字数进行判断

/

- (void)textViewDidChange:(UITextView )textView

{

//该判断用于联想输入

if (textViewtextlength > BOOKMARK_WORD_LIMIT)

{

textViewtext = [textViewtext substringToIndex:BOOKMARK_WORD_LIMIT];

}

以上就是关于Android带下划线的TextView全部的内容,包括:Android带下划线的TextView、android中textview如何限制字数、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/10159347.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存