如何将ViewController作为TabBarController

时间:2016-01-08 15:59:09

标签: ios swift uinavigationcontroller uitabbarcontroller

我尝试以编程方式向我的NavBar添加刷新按钮,而我在TabBarController并且我遇到了很大问题。这是我在ViewDidLoad()中的代码:

let buttonItem = UIBarButtonItem(barButtonSystemItem: .Refresh, target: self, action: "refreshData")
    self.navigationItem.rightBarButtonItem = buttonItem

有什么建议吗?

这是我的应用程序启动后的故事板(无图标):

No icon

1 个答案:

答案 0 :(得分:0)

确保先viewController嵌入UINavigationController,然后将此导航控制器添加到tabViewController的视图控制器阵列中。之后使用以下方法:

 let refresh = UIButton(frame: CGRectMake(0, 0, 40, 40))
 //Set refresh image
 refresh.setImage(UIImage(named: "refresh"), forState: UIControlState.Normal)
 //or set text title
 refresh.setTitle("Refresh", forState: .Normal)
 refresh.addTarget(self, action: "refresh", forControlEvents: UIControlEvents.TouchUpInside)
 self.navigationItem.rightBarButtonItem = UIBarButtonItem(customView: refresh)

修改 什么是你的导航栏?它是UINavigationBar,是的,它是可能的:

let item = UINavigationItem(title: "")
item.rightBarButtonItem = UIBarButtonItem(title: "Refresh", style: UIBarButtonItemStyle.Done, target: self, action:"refresh")
item.hidesBackButton = true
UINavigationBar().pushNavigationItem(item, animated: false)

但通常它应该嵌入UINavigationController