根據(jù)UI的設(shè)計(jì),navigationbar需要跟界面一體化,但是下面這根黑線是比較煩的問(wèn)題,可能界面一需要隱藏,界面二就要出現(xiàn),也可能需要改變粗細(xì)之類(lèi)的,又因?yàn)閚avigationbar會(huì)影響接下來(lái)的推棧,所以需要做一點(diǎn)小改動(dòng).
方法1:直接隱藏:
//在頁(yè)面出現(xiàn)的時(shí)候就將黑線隱藏起來(lái)
-(void)viewWillAppear:(BOOL)animated
{
[self.navigationController.navigationBar setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsDefault];
[self.navigationController.navigationBar setShadowImage:[UIImage new]];
}
//在頁(yè)面消失的時(shí)候就讓navigationbar還原樣式
-(void)viewWillDisappear:(BOOL)animated{
[self.navigationController.navigationBar setBackgroundImage:nil forBarMetrics:UIBarMetricsDefault];
[self.navigationController.navigationBar setShadowImage:nil];
}
這個(gè)方法唯一的不好就是會(huì)影響導(dǎo)航欄的translucent(透明)屬性
方法2:找出黑線,再做處理:
//通過(guò)一個(gè)方法來(lái)找到這個(gè)黑線(findHairlineImageViewUnder):
- (UIImageView *)findHairlineImageViewUnder:(UIView *)view {
if ([view isKindOfClass:UIImageView.class] && view.bounds.size.height <= 1.0) {
return (UIImageView *)view;
}
for (UIView *subview in view.subviews) {
UIImageView *imageView = [self findHairlineImageViewUnder:subview];
if (imageView) {
return imageView;
}
}
return nil;
}
//再定義一個(gè)imageview來(lái)等同于這個(gè)黑線
UIImageView *navBarHairlineImageView;
navBarHairlineImageView = [self findHairlineImageViewUnder:self.navigationController.navigationBar];
同樣的在界面出現(xiàn)時(shí)候開(kāi)啟隱藏
-(void)viewWillAppear:(BOOL)animated
{
navBarHairlineImageView.hidden = YES;
}
//在頁(yè)面消失的時(shí)候就讓出現(xiàn)
-(void)viewWillAppear:(BOOL)animated
{
navBarHairlineImageView.hidden = NO;
}
如果想要做一些更好的處理,比如說(shuō)改變粗細(xì),顏色之類(lèi)的也在界面出現(xiàn)的時(shí)候?qū)懢托辛?
推薦使用第二種方法,因?yàn)檎麄€(gè)項(xiàng)目都在使用導(dǎo)航欄推棧,出棧,很可能因?yàn)楦淖兞藰邮?導(dǎo)致后面的屬性混亂起來(lái).
iOS 找出導(dǎo)航欄下面的黑線(可隱藏,改變樣式等)
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- 根據(jù)UI的設(shè)計(jì),navigationbar需要跟界面一體化,但是下面這根黑線是比較煩的問(wèn)題,可能界面一需要隱藏,界...
- 根據(jù)UI的設(shè)計(jì),navigationbar需要跟界面一體化,但是下面這根黑線是比較煩的問(wèn)題,可能界面一需要隱藏,界...
- 【蝴蝶效應(yīng)】 蝴蝶效應(yīng):上個(gè)世紀(jì)70年代,美國(guó)一個(gè)名叫洛倫茲的氣象學(xué)家在解釋空氣系統(tǒng)理論時(shí)說(shuō),亞馬遜雨林一只蝴蝶...