1. 程式人生 > >iOS 去掉系統bar自帶的線

iOS 去掉系統bar自帶的線

去掉bar自帶的線有兩種方法,
第一種:那條線是陰影,shadow,陰影一般都是在控制元件的bounds之外的,我們沿著bounds進行裁剪,陰影都沒了。
//去掉陰影,目的是為了去掉上方的線
toolbar.clipsToBounds = YES;

另一種方法肯定對UIToolbar有效,其他的bar沒仔細看,系統提供了下面這個方法
/* Default is nil. When non-nil, a custom shadow image to show instead of the default shadow image. For a custom shadow to be shown, a custom background image must also be set with -setBackgroundImage:forToolbarPosition:barMetrics: (if the default background image is used, the default shadow image will be used).
 */
- (void)setShadowImage:(UIImage *)shadowImage forToolbarPosition:(UIBarPosition)topOrBottom NS_AVAILABLE_IOS(6_0) UI_APPEARANCE_SELECTOR;
如果沒有設定,就會使用系統預設的陰影圖片,我們設定一下就可以了。
[toolBar setShadowImage:[UIImage new] forToolbarPosition:UIBarPositionTop];
特別注意一下括號裡面的內容
if the default background image is used, the default shadow image will be used
如果使用了default background image,default shadow image也會被使用,也就是僅僅使用
[toolBar setShadowImage:[UIImage new] forToolbarPosition:UIBarPositionTop];
是沒有效果的。