如何在滚动视图中启用缩放时在文本字段标签中制作清晰文本

时间:2016-04-11 13:58:39

标签: ios objective-c uiscrollview zooming

您好我正在开发应用程序,其中在scrollview中启用了缩放,并且在scrollview中有许多文本字段和标签。缩放工作完全正常,但问题是我的领域的文字看起来很模糊。同时,Android应用程序的字段看起来非常清晰,而缩放比例则分为3和4,它们具有本机功能,但在iOS中,当缩放比例达到1.0以上时,这将获得模糊的内部视图。 我尝试了以下尝试。

- (void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(nullable UIView *)view atScale:(CGFloat)scale
{
    self.contentScaleFactor = scale;
    NSString * scaleFactor = [NSString stringWithFormat:@"%f",scale];
[[NSNotificationCenter defaultCenter] postNotificationName:@"UpdateScaleOfFieldsOnZooming" object:scaleFactor];

}



- (void)updateScaleOfFieldsOnZooming:(NSNotification *) notification
{
    float scaleFactor = 0.0f;
    if ([notification.object isKindOfClass:[NSString class]])
    {
        scaleFactor = [notification.object floatValue];
    }

    for (int i = 0; i<[subviews count]; i++) {

            if ([[subviews objectAtIndex:i] isKindOfClass:[UITextField class]])
            {
                    UITextField * textField = (UITextField *)[subviews objectAtIndex:i];
                    if (scaleFactor>1.5 && scaleFactor<2.5) {
                        [textField setFont:[UIFont boldSystemFontOfSize:(scaleFactor*3.5)]];
                    }
                    textField.contentScaleFactor = scaleFactor;
                    [textField setNeedsDisplay];

                    subViewObject.contentView = textField;
            }
        }

}

我在缩放结束的委托上发出了通知,并试图按比例更新文本字体,但它不能正常工作,有时它超过文本字段大小,如果不是看起来比模糊。 在缩放时我需要完美的解决方案。寻求帮助。 感谢

0 个答案:

没有答案