美文网首页
Objective-c 不常用代码

Objective-c 不常用代码

作者: sellse | 来源:发表于2015-10-29 17:51 被阅读115次
  • 获取一个对象的类名:

       NSString *name=[NSString stringWithUTF8String:object_getClassName(对象)];
    
  • UIImage转换成NSData:

      UIImageJPEGRepresentation([UIImage imageWithContentsOfFile:tmppath], 1);
    
  • 图片拉伸(内容可拉伸,边角不拉伸):

      - (UIImage * _Nonnull)stretchableImageWithLeftCapWidth:(NSInteger)leftCapWidth topCapHeight:(NSInteger)topCapHeight
    
      可拉伸的范围都是距离leftCapWidth后的1竖排像素,和距离topCapHeight后的1横排像素。只是对一个像素进行复制到一定宽度。而图像后面的剩余像素也不会被拉伸。
    
  • 获取“设置”中显示的国家和语言等:

     获取国家: NSString *country = [[NSLocale currentLocale] objectForKey:NSLocaleCountryCode];
     获取语言: NSString *language = [[NSLocale currentLocale] objectForKey:NSLocaleLanguageCode];
    
  • pushViewController:animated 卡顿

    使用UINavigationControllerpushViewController:animated:执行入栈一个子控制器时,有时会出现推出(即入栈)"卡顿"现象,这是因为从iOS7开始, UIViewController的根view的背景颜色默认为透明色(clearColor),"卡顿"其实就是由于透明色重叠后,造成视觉上的错觉,所以这并不是真正的"卡顿",但对视觉有很大影响。
    解决方法:只要在UINavigationController所push出的子控制器中设置view的背景颜色赋值为任一颜色,就能解决所谓的"卡顿"问题。

  • 取消UIButton点击时背景变灰色

    btn.adjustsImageWhenHighlighted = NO;

相关文章

网友评论

      本文标题:Objective-c 不常用代码

      本文链接:https://www.haomeiwen.com/subject/nlhfhttx.html