我想重现类似于iOS的Facebook的“更新状态”视图的画面。
(本文应为可编辑)散步(任何过去这里不应该是编辑) - 在南海滩纳拉宾
用户应该能够输入/编辑文本的附加字符串的左边。 附加字符串需要其父项内包装和点击。
有谁知道如何做到这一点? (我最近看到它在Viddy应用以及)。
难道是用UIAttributedString分两行以上,更新它的框架越来越多的UITextField如输入的文本?
我想重现类似于iOS的Facebook的“更新状态”视图的画面。
(本文应为可编辑)散步(任何过去这里不应该是编辑) - 在南海滩纳拉宾
用户应该能够输入/编辑文本的附加字符串的左边。 附加字符串需要其父项内包装和点击。
有谁知道如何做到这一点? (我最近看到它在Viddy应用以及)。
难道是用UIAttributedString分两行以上,更新它的框架越来越多的UITextField如输入的文本?
更新:它看起来像你想要的是让用户发生在签名光标反正,但不能让她式
在这种情况下,你想使用它代替
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text{
NSInteger signatureLength=20;
if(range.location>self.textView.text.length-signatureLength){
return false;
}
else{
return true;
}
}
原版的:
您需要使用UITextViewDelegate
实施 - (空)textViewDidChangeSelection:(UITextView的*)TextView的方法,是这样的:
在这个例子中,我们假设签名长度为20,这将是这个样子:
-(void)textViewDidChangeSelection:(UITextView *)textView{
NSInteger signatureLength=20;
NSRange newSelection=self.textView.selectedRange;
if(newSelection.location>self.textView.text.length-signatureLength){
[self.textView setSelectedRange:NSMakeRange(self.textView.text.length-signatureLength, 0)];
}
}
所以基本上你截取每次选择(==光标在这种情况下)的变化,如果光标将是在签名的中间,你之前重新定位。 设置的选择用0长度只是改变光标位置。