2014-07-18 55 views
0

文本的位置我有一個的CGRect(0,Y,320,58)一個UITextView並居中對齊文本,我想文中的UITextView得到的UITextView

_________________________ 
|       | 
|  Hey how are you? | 
|_________________________| 

我想要的位置從左邊的文字位置/填充我將如何得到它

回答

0

如果文本是一個UILabel這是UIImageView的內部則U可以通過

CGFloat yPosition = [self.myLabel.frame.origin.y]; 

如果拿不到標籤的y位置內然後使用實驗室el並將其設置爲故事板中UIView的所需位置。 獲取Textview相對於Imageview的位置。

希望這有助於。

+1

我認爲他的問題是與UITextView – DaSilva

1

我想你可以使用TextView的

textContainerInset

textView.textContainerInset = UIEdgeInsetsMake(TOP, LEFT, BOTTOM, RIGHT); 
+0

這是設置containerInset的位置,而我想檢索它 – user1201239

0

的UITextView採用UITextInput協議的這個屬性。該協議的方法 - firstRectForRange:它會告訴你矩形覆蓋的字符範圍。

0

試試這個,可以幫助全...

UITextView *textStuff = [[UITextView alloc] init]; 
textStuff.frame = CGRectMake(2.0, 200.0, 200.0, 40.0); 
textStuff.text = @"how are you today?"; 
textStuff.textColor = [UIColor blackColor]; 

UITextPosition *Pos2 = [textStuff positionFromPosition: textStuff.endOfDocument offset: nil]; 
UITextPosition *Pos1 = [textStuff positionFromPosition: textStuff.endOfDocument offset: -textStuff.text.length]; 

UITextRange *range = [textStuff textRangeFromPosition:Pos1 toPosition:Pos2]; 

CGRect result1 = [textStuff firstRectForRange:(UITextRange *)range ]; 

NSLog(@"%f, %f", result1.origin.x, result1.origin.y); 

UIView *view1 = [[UIView alloc] initWithFrame:result1]; 
view1.backgroundColor = [UIColor colorWithRed:0.2f green:0.5f blue:0.2f alpha:0.4f]; 
[textStuff addSubview:view1]; 

[self.view addSubview:textStuff]; 

打印到「的CGRect RESULT1」,看看它的返回文本的發佈...

0

好了,所以我就是這麼做的,

UITextPosition *post = [_textview beginningOfDocument]; 


CGRect r = [_textview caretRectForPosition:post];