2016-03-25 16 views
0

Yuvarlak kenarlı bir UIBarButtonItem oluşturmak istiyorum.UIBarButtonItem'in neden bir başlığı yok?

let postButton = UIButton(type: .Custom) 
    postButton.frame = CGRectMake(0, 0, 90, 30) 
    postButton.layer.borderColor = logoColor(0).CGColor 
    postButton.layer.borderWidth = CGFloat(3.0) 
    postButton.layer.cornerRadius = 4.0 
    postButton.clipsToBounds = true 
    postButton.titleLabel?.font = UIFont(name: "Lato-Bold", size: 10.0) 
    postButton.titleLabel?.textAlignment = .Center 
    postButton.titleLabel?.textColor = UIColor.blackColor() 
    postButton.setTitle("post", forState: .Normal) 
    postButtonBar = UIBarButtonItem(customView: postButton) 

    navigationItem.rightBarButtonItems = [ postButtonBar ] 

Bunu denedim, ancak sonuç, başlığı olmayan kırmızı anahatlı bir düğme.

+0

()' – Slayter

+0

Ben senin düğme çalışma var. – matt

cevap

2

doğru bir şekilde düğmesini inşa ederseniz kod iyi çalışır: Ben senin yazı yok çünkü

let postButton = UIButton(type: .Custom) 
    postButton.frame = CGRectMake(0, 0, 90, 30) 
    postButton.layer.borderColor = UIColor.redColor().CGColor 
    postButton.layer.borderWidth = CGFloat(3.0) 
    postButton.layer.cornerRadius = 4.0 
    postButton.clipsToBounds = true 
    postButton.setTitle("post", forState: .Normal) 
    postButton.setTitleColor(UIColor.blackColor(), forState: .Normal) 
    postButton.titleLabel?.font = UIFont(name: "GillSans", size: 10.0) 
    postButton.setTitleColor(UIColor.grayColor(), forState: .Highlighted) 
    let postButtonBar = UIBarButtonItem(customView: postButton) 

Ben ... yerine farklı bir yazı da ben vurgulayarak üzerinde gri bir renk kattı, böylece düğmesine dokunduğunuzda cevap verir.

enter image description here

+0

Kodu şu adresten güncelledim: '' 'postButton.setTitle (" post ", forState: .Normal)' ''. Ancak başlık hala görünmüyor. – TIMEX

0

Ben kullanmak gerektiğini düşünüyorum: Ben önümde tam kod yok gibi

postButton.setTitle("Post", forState: .Normal) 
postButton.setTitleColor(UIColor.blackColor(), forState: .Normal) 

Emin bilmiyorum ama ben eklemek gerektiğini düşünüyorum düğmeye bir eylem tıklanabilir olabilmesi için: yerine UIButton `a` UIBarButtonItem() `yapıcısı kullanılarak yapılmalıdır

postButton.addTarget(self, action: "functionName", forControlEvents: .TouchUpInside)