iOS UILabel,UIButton上文字显示模糊问题的处理

研究了很久,从这里找到了答案。

  1. 在某些程序的时候,我们会动态的设置子视图的位置,子开发中,我就遇到了这样的问题,显示在label,或者button的titile上的文字模糊显示的问题。经过一番搜索后,终于把这个困扰我的问题解决了。原来是因为我的视图的中心点不为整数导致的问题,于是我就用一下方法调整了一下视图中心点问题就pass啦,哗啦啦。。。

     CGPoint point = button.center;        
     int center_x = floor(point.x);        
     int center_y = floor(point.y);        
     button.center = CGPointMake(center_x, center_y);
    

不知道对此处理有没有更好的方式,欢迎分享。

  1. 我也遇到了这个问题,是图片渲染的取整问题(font最终也是图片).........但是,需要取整的不是center,而是frame起始的orgin( x, y坐标)...... 估计ls刚好遇到的控件宽或高是偶数的,center才和frame.orgin的取整是一致的,拿个奇数宽/高的来看旧能确定了 。

  2. 总结了一下。
    我们可以写一个工具类,在需要的地方调用。代码如下:

     +(void)solveUIWidgetFuzzy:(UIView *)view
     {
         CGRect frame = view.frame;
         int x = floor(frame.origin.x);
         int y = floor(frame.origin.y);
         int w = floor(frame.size.width)+1;
         int h = floor(frame.size.height)+1;
    
         view.frame = CGRectMake(x, y, w, h);
     }
    

应该就可以解决了,有后续问题再做处理。。。

你可能感兴趣的:(iOS UILabel,UIButton上文字显示模糊问题的处理)