您的位置:首页 > 产品设计 > UI/UE

iphone UITextView 输入文字光标都从最初点开始

2012-02-24 09:12 771 查看
更改UITextView的光标的位置:

-(void)textViewDidChangeSelection:(UITextView*)textView

{

NSRange range;

range.location =
0;

range.length =
0;

textView.selectedRange =range;

}

以上是当在UITextView中输入文字的时候,光标都从最初点开始。

PS:UITextView有一个小BUG,如果其高度小于50的话,输入的时候其光标会往上偏移,从而看不到光标,如果大于50就不会出现这个问题。

UITextView在光标处添加文字

// 获得光标所在的位置

int location =contentTextView.selectedRange.location;

// 将UITextView中的内容进行调整(主要是在光标所在的位置进行字符串截取,再拼接你需要插入的文字即可)

NSString *content = contentTextView.text;

NSString *result = [NSStringstringWithFormat:@"%@[姓名变量]%@",[contentsubstringToIndex:location],[contentsubstringFromIndex:location]];

// 将调整后的字符串添加到UITextView上面

contentTextView.text = result;

UITextView限制行数的问题之前试了好多方法,最终解决了,解决方法非常简单,在UITextViewDelegate中加下面的方法即可:

-(BOOL)textView:(UITextView *)textViewshouldChangeTextInRange:(NSRange)range

replacementText:(NSString*)text {

if (textView.contentSize.height > 104){

textView.text = [textView.text substringToIndex:[textView.textlength]-1];

returnNO;

}

return YES;

}

-(void)textViewDidChangeSelection:(UITextView*)textView

每次输入都知道

[textView becomeFirstResponder]

(void)textViewDidChange:(UITextView*)textViewtextView的内容发生改变时,会调用。。再此计算已经输入的字符个数。

- (BOOL)textView:(UITextView*)textView shouldChangeTextInRange:(NSRange)rangereplacementText:(NSString
*)text; {

if([@"\n" isEqualToString:text] == YES) {

[textViewresignFirstResponder];

returnNO;

}

returnYES;

}

- (BOOL)textView:(UITextView*)textView shouldChangeTextInRange:(NSRange)rangereplacementText:(NSString *)text;

textview根据光标插入数据



UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];

//定位光标

NSRange range = [opinion selectedRange];

NSMutableString *top = [[NSMutableStringalloc] initWithString:[opiniontext]];

NSString *addName = [NSStringstringWithFormat:@"%@、",cell.textLabel.text];

[top insertString:addName atIndex:range.location];

opinion.text = top;

[top release];

原文地址:http://www.cocoachina.com/bbs/read.php?tid=73570&page=7
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐