如何在视图中居中NSTextField

Elf*_*ros 6 xcode cocoa objective-c interface-builder nstextfield

我在一个带有文本"__DRAG_AND_DROP_YOUR_MEDIA_HERE"的视图中以IB为中心的NSTextField(标签).在我的控制器中使用NSLocalizedString来翻译文本:

English.lproj/Localizable.strings:

"__DRAG_AND_DROP_YOUR_MEDIA_HERE" = "Drag & Drop your media here"
Run Code Online (Sandbox Code Playgroud)

French.lproj/Localizable.strings:

"__DRAG_AND_DROP_YOUR_MEDIA_HERE" = "Déposer vos média ici"
Run Code Online (Sandbox Code Playgroud)

只有初始文本"__DRAG_AND_DROP_YOUR_MEDIA_HERE"在视图中居中.翻译后的文本不是中心(取决于长度).所有翻译的文本都以与原始文本相同的横坐标开始.我该如何解决这个问题?

PS:我不想玩setFrame,高度,宽度只是为了这样一个简单的点.我想还有另一种方法可以做到这一点.

谢谢.

Ken*_*ses 14

将文本字段的对齐方式设置为NSCenterTextAlignment.您可以从IB执行此操作或以编程方式使用-setAlignment:.