如何在cocoa app中设置默认字体和字体样式?

时间:2013-05-22 16:45:44

标签: objective-c cocoa fonts nsview

我的应用程序包含所有不同类型的NSView,包括NSTabView,NSButton,NSTextField,NSPopupButton等。

我想将所有显示文字更改为某种字体并使用某种字体样式。

无论如何

是否可以在cocoa app中设置默认字体和字体样式?

我试过了: How to loop through subviews in order to get the text of NSTextViews

然而它不适用于NSTabView和NSButton。

我认为必须有一个容易做到的,只是我不知道它是什么。

请告知。

1 个答案:

答案 0 :(得分:1)

没有内置方法可以做到这一点(即通过在Info.plist中设置一个键)。您确实需要以这种或那种方式浏览应用程序中的所有控件,并为它们设置自定义字体。有几种可能的方法。一种是为所有需要使用自定义字体的控件使用自定义子类。子类可以非常小,它只需要在初始化时设置正确的字体,可能保留Interface Builder中的其他字体属性(大小,颜色等)设置。另一个选择是按照您的建议进行操作并浏览应用中的每个子视图,检查它是否响应-setFont:,并设置自定义字体(如果有)。我已经使用了第一种方法(子类)并取得了很好的成功。