我该如何为NSTextView添加左侧的padding或者margin? 我知道如何在NSTextField中进行操作(通过子类化NSTextFieldCell),但是在NSTextView中该怎么做呢?
编辑:更多信息如下: 1. 此文本视图只包含纯文本,没有其他像正常文本编辑器(例如段落缩进)一样的花哨效果。 2. 是否可以使用setTextContainerInset:实现此功能?
我该如何为NSTextView添加左侧的padding或者margin? 我知道如何在NSTextField中进行操作(通过子类化NSTextFieldCell),但是在NSTextView中该怎么做呢?
编辑:更多信息如下: 1. 此文本视图只包含纯文本,没有其他像正常文本编辑器(例如段落缩进)一样的花哨效果。 2. 是否可以使用setTextContainerInset:实现此功能?
textContainerOrigin
。@implementation MyTextView
- (void)awakeFromNib {
[super setTextContainerInset:NSMakeSize(15.0f, 5.0f)];
}
- (NSPoint)textContainerOrigin {
NSPoint origin = [super textContainerOrigin];
NSPoint newOrigin = NSMakePoint(origin.x + 5.0f, origin.y);
return newOrigin;
}
@end
补充一下,iOS7在UITextView中增加了一个属性叫做textContainerInset。调用setTextContainerInset会为文本视图内的内容创建边距。
NSParagraphStyleAttributeName
属性的值。NSTextView
所需要的全部内容:textView.textContainerInset = NSSize(width: 15, height: 5)
setTextContainerInset:
有什么确切的区别? - Patrick PijnappelsetTextContainerInset
函数会将文本容器的顶部和两侧都进行相同的内边距设置。在该示例中,改变文本容器的起点位置会导致它具有非对称的填充效果。 - Abizern