Xcode 9 self.navigationItem.titl
2017-09-24 本文已影响441人
RocketsChen
未适配更新Xcode 9遇到第一个比较大的适配就是
self.navigationItem.titleView
先看看未适配前的出现Bug效果
这个Bug在IOS11 之前都是好的,可以在IOS 11上面我们就会出现这个问题。
解决方案:
-
在自定义View中手动添加一个intrinsicContentSize 属性,并在.m中重写
@property(nonatomic, assign) CGSize intrinsicContentSize;
static bool closeIntrinsic = false; //Intrinsic的影响
/**
通过覆盖intrinsicContentSize函数修改自定义View的Intrinsic的大小
@return CGSize
*/
-(CGSize)intrinsicContentSize
{
if (closeIntrinsic) {
return CGSizeMake(UIViewNoIntrinsicMetric, UIViewNoIntrinsicMetric);
} else {
return CGSizeMake(self.dc_width, self.dc_height);
}
}
这个titleView的适配就解决了
适配推荐参考文章 : 只有20%的iOS程序员能看懂:详解intrinsicContentSize 及 约束优先级/content Hugging/content Compression Resistance