4

我添加了一个UITextView,当它开始编辑时,它不是从第一行开始,而是从第二行开始。有人知道吗?谢谢!

PS 即使我还没有实现任何代码,这个问题仍然存在。

4

5 回答 5

3

in the viewDidLoad method add

object-c:

self.automaticallyAdjustsScrollViewInsets = NO

swift:

self.automaticallyAdjustsScrollViewInsets = false
于 2014-11-05T03:49:34.680 回答
3

当您在 UINavigationController 中添加时,textView 被扩展布局属性下推。

尝试放入您的 ViewDidLoad 方法

  [self setEdgesForExtendedLayout:UIRectEdgeNone];
于 2013-10-24T04:51:55.663 回答
2

对于顶部的输入/开始文本,UITextView您需要设置contentInset如下

self.yourTextViewName.contentInset = UIEdgeInsetsMake(2.0,1.0,0,0.0); // set value as per your requirement.

一般contentInset用于设置内容视图和封闭之间的插入距离UITextView

于 2013-10-24T04:40:11.013 回答
0

你也可以通过绑定来做同样的事情。请参阅下面的屏幕截图:- 在此处输入图像描述

在控件内部 -> 对齐选择第一个选项,如上: -

在此处输入图像描述

然后这是上面的输出:-

于 2013-10-24T05:01:07.857 回答
0

You can do this by this way also

- (void) viewDidLoad {
   [textField addObserver:self forKeyPath:@"contentSize" options:(NSKeyValueObservingOptionNew) context:NULL];
   [super viewDidLoad];
}

-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context {
   UITextView *tv = object;
   //Center vertical alignment
   //CGFloat topCorrect = ([tv bounds].size.height - [tv contentSize].height * [tv zoomScale])/2.0;
   //topCorrect = ( topCorrect < 0.0 ? 0.0 : topCorrect );
   //tv.contentOffset = (CGPoint){.x = 0, .y = -topCorrect};

   //Bottom vertical alignment
   CGFloat topCorrect = ([tv bounds].size.height - [tv contentSize].height);
    topCorrect = (topCorrect <0.0 ? 0.0 : topCorrect);
    tv.contentOffset = (CGPoint){.x = 0, .y = -topCorrect};
}
于 2014-01-23T12:01:18.347 回答