坑录
2019-12-02 本文已影响0人
Codepgq
-
2019年12月02日
-
使用TextView计算contentSize,出现获取不到的情况,UI卡死问题
很有可能是未加入到当前视图树中,加入之后就可以解决这个问题,应该是内部的绘制机制问题,尤其是适配iPad的时候需要注意此问题
-
使用UITabBarItem.appearance().setTitleTextAttributes(xxxx, for:xxx)在iOS13上设置无效的问题
因为iOS 13上面设置这个发生了改变,需要在TabbarController中进行适配
// 适配iOS 13上面,item的normal颜色不准的问题 if #available(iOS 13.0, *) { self.tabBar.unselectedItemTintColor = .red }
-
方法交换
extension UIImage {
static func pq_exchangeImplementations() {
guard let m1 = class_getInstanceMethod(self, #selector(self.init(named:))) else {
return
}
guard let m2 = class_getInstanceMethod(self, #selector(swizzle_named(_:))) else {
return
}
if (class_addMethod(self, #selector(swizzle_named(_:)), method_getImplementation(m2), method_getTypeEncoding(m2))) {
class_replaceMethod(self, #selector(swizzle_named(_:)), method_getImplementation(m1), method_getTypeEncoding(m1))
} else {
method_exchangeImplementations(m1, m2)
}
}
@objc func swizzle_named(_ named: String) {
print("使用image(named: \(named)) 加载图片")
if !(named.isEmpty) {
swizzle_named(named)
return
}
print("图片名字为空,不加载")
}
}