我希望当用户在其设备上更改其首选字体大小时,textview的字体大小会自动更改。
我设置了观察者,但我需要重新加载页面以查看字体大小的变化。
- (void)viewDidLoad {
[super viewDidLoad];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(preferredFontChanged:)
name:UIContentSizeCategoryDidChangeNotification
object:nil];
- (void)preferredFontChanged:(NSNotification *)notification
{
[self setupCustomUIView];
}
- (void)setupCustomUIView
{
[self.bodyTextView setLineHeightScale:0.5f];
[self.view setNeedsDisplay];
}
答案 0 :(得分:0)
检查并确保在UIContentSizeCategoryDidChangeNotification
通知后执行设置字体的行。
例如,您可以在下面尝试..(请参阅本教程here)
- (void)setupCustomUIView
{
// Assuming that bodyTextView is actually your dynamic text sized view.
self.bodyTextView.font = [UIFont preferredFontForTextStyle:UIFontTextStyleHeadline1];
}