Я поставил мой UIToolbar оттенок цвета до некоторого значения, и есть эта граница, которую я вижу, в котором я хочу, чтобы удалить:как я могу удалить верхнюю границу на UIToolbar
Как Я удаляю эту черную границу>
Я поставил мой UIToolbar оттенок цвета до некоторого значения, и есть эта граница, которую я вижу, в котором я хочу, чтобы удалить:как я могу удалить верхнюю границу на UIToolbar
Как Я удаляю эту черную границу>
Правильный ответ - это тоталитарный ... FYI. https://stackoverflow.com/a/14448645/627299
Ответ на этот вопрос приведен ниже для справки.
Вот что я сделал с моим белым фоном панели инструментов ...
whiteToolBar.layer.borderWidth = 1;
whiteToolBar.layer.borderColor = [[UIColor whiteColor] CGColor];
Может быть, вы могли бы сделать то же самое с вашим цветом вместо этого.
Вы можете сделать так:
self.navigationController.toolbar.clipsToBounds = YES;
спасибо, что я искал это. – quarac
Это не помогло мне в iOS 6 – DrMickeyLauer
Это работает и для голого UIToolbar; не должен быть частью навигационного контроллера. – starkos
Установка стиля в UIBarStyleBlackTranslucent сделал это для меня (IOS 6)
это не работает последовательно на версиях IOS, кажется, не работает на iOS7. я ответил на этот другой вопрос: https://stackoverflow.com/a/19893602/452082 и вы можете изменить это решение просто удалить фон тень (и оставить свой toolbar.backgroundColor
любой понравившийся вам цвет)
toolbar1.clipsToBounds = YES;
работал для меня упаковывают кто-то еще пытается с Навигационный бар
Это приводит к тому, что дно обрезается на границе безопасной зоны на iPhone X –
я немного запутались с этими ответами, но мне не хватало того, что вы были с помощью Выпускного так просто чтобы быть ясно здесь стремительным код, который я использовал, чтобы скрыть границы:
import UIKit
class ViewController: UIViewController {
//MARK Outlets
@IBOutlet weak var ToolBar: UIToolbar!
//MARK View Functions
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
// Hide the bottom toolbar's top border
ToolBar.clipsToBounds = true
}
}
я перетащил в olbar в нижней части представления для этого, и это не верхняя панель навигации, к которой относятся другие вопросы.
Отлично, это сработало. Не могли бы вы объяснить, почему? Благодарю. – redcurry
clipsToBounds
техника клипы тень UIToolbar, а также вид фона. На iPhone X это означает, что фон больше не выходит за пределы safe area.
Раствор ниже использует маску, чтобы обрезать только верхнюю часть UITabBar. Маска отображается в подклассе UIToolBar, а рамка маски обновляется с переопределением layoutSubviews
.
class Toolbar: UIToolbar {
fileprivate let maskLayer: CALayer = {
let layer = CALayer()
layer.backgroundColor = UIColor.black.cgColor
return layer
}()
override init(frame: CGRect) {
super.init(frame: frame)
initialize()
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
initialize()
}
fileprivate func initialize() {
layer.mask = maskLayer
// Customize toolbar here
}
override func layoutSubviews() {
super.layoutSubviews()
// height is an arbitrary number larger than the distance from the top of the UIToolbar to the bottom of the screen
maskLayer.frame = CGRect(x: -10, y: 0, width: frame.width + 20, height: 500)
}
}
Это работает для меня на любом устройстве, но iPhone X. Я скопировал строку кода для строки, создав новый класс Swift и указав класс в Interface Builder. –
@ E-Madd Возможно, интерфейс Builder - это разница. В нашей установке мы программно создаем UINavigationController с подклассом UINavigationBar и UIToolbar, например: 'let navigationController = UINavigationController (navigationBarClass: NavigationBar.self, toolbarClass: Toolbar.self)' –
Я реорганизовал это без изменений. У меня все еще есть граница. На самом деле это, по-видимому, разрыв между основным видом и панелью инструментов. –
создать 1 пиксель х 1 пиксель четкое изображение и назовите его clearPixel.png
toolbar.setShadowImage(UIImage(named: "clearPixel.png"), forToolbarPosition: UIBarPosition.any)
Также можно просто выполнить 'UIImage()', нет необходимости в активе – Joey
Это намного чище использовать whiteToolBar.clipToBounds = YES – jomafer