我的应用程序包含所有不同类型的NSView,包括NSTabView,NSButton,NSTextField,NSPopupButton等。
我想将所有显示文字更改为某种字体并使用某种字体样式。
无论如何是否可以在cocoa app中设置默认字体和字体样式?
我试过了: How to loop through subviews in order to get the text of NSTextViews
然而它不适用于NSTabView和NSButton。
我认为必须有一个容易做到的,只是我不知道它是什么。
请告知。
答案 0 :(得分:1)
没有内置方法可以做到这一点(即通过在Info.plist中设置一个键)。您确实需要以这种或那种方式浏览应用程序中的所有控件,并为它们设置自定义字体。有几种可能的方法。一种是为所有需要使用自定义字体的控件使用自定义子类。子类可以非常小,它只需要在初始化时设置正确的字体,可能保留Interface Builder中的其他字体属性(大小,颜色等)设置。另一个选择是按照您的建议进行操作并浏览应用中的每个子视图,检查它是否响应-setFont:
,并设置自定义字体(如果有)。我已经使用了第一种方法(子类)并取得了很好的成功。