我想复制AppStore屏幕,他们在导航栏下面有一个UIToolbar。细线从导航栏中删除,但它们用于工具栏。
这是它的样子:
为了做到这一点,我将UIToolbar设置为黑色样式+自定义backgroundColor:
[[UIToolbar appearance] setBackgroundColor:[UIColor navBarBackgroundColor]];
要从导航栏中删除发线,我做了:
[self.navigationController.navigationBar setShadowImage:[[UIImage alloc] init]];
[self.navigationController.navigationBar setBackgroundImage:[[UIImage alloc] init]
forBarMetrics:UIBarMetricsDefault];
我得到了这个:
我在想,为了在底部添加细线,我可以创建一个底部有1px线的UIImage,但如果可能的话,我想以其他更好的方式进行。
答案 0 :(得分:0)
您可以通过在工具栏的图层中添加子图层来添加底部边框:
CALayer *bottomBorder = [CALayer layer];
bottomBorder.frame = CGRectMake(0.0f, toolbar.frame.size.height - 1.0f, toolbar.frame.size.width, 1.0f);
bottomBorder.backgroundColor = [UIColor colorWithWhite:0.8f
alpha:1.0f].CGColor;
[toolbar.layer addSublayer:bottomBorder];