2015-07-03 23 views
6

Po dodaniu paska UIToolBar wygląda on na przezroczysty. Jednak nie chcę, aby tak się stało. Oto mój kod:UIToolBar jest przezroczysty

var done = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.Done, target: self, action: Selector("done")) 

    if let font = UIFont(name: "Avenir", size: 17.0) { 
     done.setTitleTextAttributes([NSFontAttributeName: font], forState: .Normal) 
    } 
    toolBar.items = [done] 
    toolBar.barStyle = UIBarStyle.Default 
    self.birthdayTextField.inputAccessoryView = toolBar 

Czy robię coś złego?

Odpowiedz

1

wypróbować ten kod UIToolBar transparent:

self.toolbar.setBackgroundImage(UIImage(), 
           forToolbarPosition: UIBarPosition.Any, 
           barMetrics: UIBarMetrics.Default) 
self.toolbar.setShadowImage(UIImage(), 
          forToolbarPosition: UIBarPosition.Any) 
+0

Niestety, jeśli nie było jasne wcześniej. Nie chcę, aby mój pasek narzędzi był przezroczysty. Z jakiegoś powodu podany przeze mnie kod tworzy przezroczysty pasek narzędzi. –

0

Należy wyłączyć efekt przezierności/transpacency

toolbar.translucent = false 
+0

Dziękuję za odpowiedź! Próbowałem tego, ale nadal ma przezroczysty/półprzezroczysty efekt. –

3

Po natknąć tej kwestii ja sam stwierdził, że pasek narzędzi musi być albo wystąpienia z niezerową ramkę lub zadzwonił na nią sizeToFit.

np.

let tb = UIToolbar() 
    tb.translucent = false 
    tb.items = [UIBarButtonItem.init(barButtonSystemItem: UIBarButtonSystemItem.FlexibleSpace, target: nil, action: nil), UIBarButtonItem.init(title: "A button", style: .Plain, target: self, action: Selector("someAction:"))] 
    tb.sizeToFit() 
    userField?.inputAccessoryView = tb 

lub

let tb = UIToolbar(CGRectMake(0,0,view.frame.width,44)) 
    tb.translucent = false 
    tb.items = [UIBarButtonItem.init(barButtonSystemItem: UIBarButtonSystemItem.FlexibleSpace, target: nil, action: nil), UIBarButtonItem.init(title: "A button", style: .Plain, target: self, action: Selector("someAction:"))] 
    userField?.inputAccessoryView = tb 
0

Spróbuj

toolBar.barStyle = UIBarStyle.Black 

i upewnij toolBar.translucent = false