2014-09-15 1 views
3

Вот мой текущий код:Почему UIBarButtonItem изображение всегда нечеткие/размыто/некачественно

var reply = UIBarButtonItem(image: UIImage(named: "reply"), style: UIBarButtonItemStyle.Plain, target: self, action: Selector("reply:")) 
self.navigationItem.rightBarButtonItem = reply 

img Кнопка в правом верхнем углу всегда размыто. Это скриншот от устройства iPhone4s, поэтому он не связан с сетчаткой.

Я пробовал различные размеры изображения от 30x30 до 512x512 и добавлял изображение с помощью customView. Эти методы не устранили проблему.

Заранее спасибо.

ответ

9

я решил его с помощью этого метода:

var replyBtn = UIButton(frame: CGRect(x: 0, y: 0, width: 30, height: 30)) 
replyBtn.setImage(UIImage(named: "reply"), forState: UIControlState.Normal) 
replyBtn.addTarget(self.navigationController, action: Selector("reply:"), forControlEvents: UIControlEvents.TouchUpInside) 
var item = UIBarButtonItem(customView: replyBtn) 
self.navigationItem.rightBarButtonItem = item 

Он отображает кнопку очень четкое используя то же самое изображение.

+0

Если не работает с Swift 2 и Xcode 6.4 Заменить последнюю строку //self.navigationItem.rightBarButtonItem = элемент С self.navigationController? .navigationBar.topItem? .rightBarButtonItem = п – AiOsN