美文网首页
开发问题记录

开发问题记录

作者: 因为太有钱 | 来源:发表于2020-06-08 17:47 被阅读0次

1:UITextView自动滚动到底部

需求:UITextView默认有文字超过输入框高度,滚动到底部!

坑:设置layoutManager的allowsNonContiguousLayout的原因:解决自动到底部的时候可能会闪一下。
//1:首先设置textView allowsNonContiguousLayout 的属性为NO
self.textView.layoutManager.allowsNonContiguousLayout = NO;
 //2:设置滚动
[self.textView scrollRangeToVisible:NSMakeRange(self.textView.text.length, 1)];  

2:UITextView光标偏移的问题

参考资料

//光标贴边
CGFloat lineFragmentPadding = -_textView.textContainer.lineFragmentPadding;
_textView.textContainerInset = UIEdgeInsetsMake(offset, lineFragmentPadding, offset, lineFragmentPadding);

3:垂直居中

//1:计算输入文字的高度
CGFloat height = [self.textView.text ?:@" " boundingRectWithSize:CGSizeMake(SCREEN_WIDTH - 69- 96, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin|NSStringDrawingUsesFontLeading attributes:@{NSFontAttributeName:ACFontWithSize(14)} context:nil].size.height;
CGFloat offset = 0;
//self.textViewHeight为输入框的高度
 if (height < self.textViewHeight) {
     offset = (self.textViewHeight - height)*0.5;
}else{
    offset = 0;
}
CGFloat lineFragmentPadding = -_textView.textContainer.lineFragmentPadding;
//2:设置内容 textContainerInset
self.textView.textContainerInset = UIEdgeInsetsMake(offset, lineFragmentPadding, offset, lineFragmentPadding);

4:NSDate 拿到的时间晚8个小时

    //获取的正确时间
    NSDate *date = [NSDate date];
    NSTimeZone *zone = [NSTimeZone systemTimeZone];
    NSInteger interval = [zone secondsFromGMTForDate:date];
    NSDate *localeDate = [date dateByAddingTimeInterval:interval];

相关文章

  • 开发记录小问题

    一、关于屏幕旋转的监听UIDevice.orientationDidChangeNotification 通知当设...

  • IOS 开发 问题记录

    1.view添加了手势,view上的UIButton的点击事件就会被手势拦截。 解决方案:在手势的代理里面做判断。...

  • 开发问题记录

    1.解决端口占用问题 taskkill /f /t /im adb.exe 2.Error:Execution f...

  • 5.9 记录开发问题

    ①.Supervisord报错http://localhost:9001 refused connection s...

  • 开发问题记录

    1:UITextView自动滚动到底部 需求:UITextView默认有文字超过输入框高度,滚动到底部! 2:UI...

  • 开发问题记录

    开发需求遇到一个场景,异步请求同一个接口时间间隔太小,导致server判定为恶意请求,会把一部分request断开...

  • 记录开发遇到的问题

    1.对接接口向服务端传送json数组的时候可能会出现失败的问题,原因是可能存在非法字符,encode一下即可 pu...

  • Flutter开发 - 今日总结

    前言 最近忙了一段时间,没有记录Flutter开发过程中遇到的问题,今天抽点时间做个总结,记录一下开发经验! 开发...

  • Android 学习问题汇总

    Android 学习问题汇总 开始android开发, 记录遇到的问题 1. Error:moudle not s...

  • Swift 开发问题集锦

    以下问题皆为平时开发中所遇到不知原因,最后解决的问题。记录后,以便后续发生此类问题快速定位: iOS开发一般遇到此...

网友评论

      本文标题:开发问题记录

      本文链接:https://www.haomeiwen.com/subject/bwartktx.html