UITextView设置首行缩进

这两天公司做的项目,发布动态界面需求实现需要用到UITextView的首行缩进,之前没做过,正好记录下问题.
UITextView设置首行缩进_第1张图片
界面需求
一开始,做完之后,觉得大功告成了,才发现,系统键盘输入的时候一直是错乱的,就是输入中文的时候,中英文错乱,才发现,自己写了一个炸弹,在textDidChange 方法中一直不断的将attributedText赋值,导致了这个问题
UITextView设置首行缩进_第2张图片
中文错乱 ![Uploading EAAB188F-A416-4011-8AC1-C48F1B1805EB_069061.png . . .]
UITextView设置首行缩进_第3张图片
问题所在
但是为了解决问题,就只能在初始化UITextview的时候直接将属性初始化,但是因为text为空,所以
        self.attributedText = [[NSAttributedString alloc] initWithString:self.text attributes:attributes];
无效,试了下面的方法
self.text = @"  ";//为了保证设置有效
//再设置 attributedText
    self.attributedText = [[NSAttributedString alloc] initWithString:self.text attributes:textAttributes];

self.text = @"";//为了防止由于空格
深切的体会到,写代码的时候一定要知道自己写这行代码什么意思,不然后期可能后患无穷,也提醒自己,出门记得带脑子.
后期有时间,会把这种类型的输入框写成一个demo,供大家使用.

你可能感兴趣的:(UITextView设置首行缩进)