【问题标题】:How to add ToolBar button to Tool Bar in my Navigation Controller如何在我的导航控制器中将工具栏按钮添加到工具栏
【发布时间】:2014-09-20 00:05:52
【问题描述】:

我正在使用 XCode 我在导航控制器中添加了一个工具栏。我想将条形按钮添加到该工具条。 在我的故事板中,我尝试将“条形按钮项”控制拖动到工具栏,但这不起作用,没有添加任何内容。

那么可以'Bar Button Item'到工具栏吗?

谢谢。

更新:

我添加了自己的 UINavigationController,将故事板中的工具栏绑定到我的类作为“mytoolbar”。 并迅速给出了答案代码, 但是当我在模拟器上运行它时,我没有看到任何工具栏项。

class AppNavigationController: UINavigationController {


    @IBOutlet weak var mytoolbar: UIToolbar!

    override func viewDidLoad() {
        super.viewDidLoad()

        // Do any additional setup after loading the view.

        var rightButton = UIBarButtonItem(title: "Title", style: UIBarButtonItemStyle.Plain, target: self, action: Selector("method"))
        var items = [AnyObject]()

        items.append(rightButton)
        mytoolbar.items = items

    }

    func method() {
        println("Something cool here")
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

}

【问题讨论】:

    标签: ios xcode


    【解决方案1】:

    对于斯威夫特:

     let item1 = UIBarButtonItem(title: "Continue", style: .Plain, target: self, action: "touchPickImage")
    
     let item2 = UIBarButtonItem(title: "Delete", style: .Plain, target: self, action: "deleteImage")
    
     toolBar.setItems([item], animated: true)
    

    您可以从视图控制器获取工具栏的参考,也可以拖动它然后添加。

    【讨论】:

      【解决方案2】:

      您可能希望在此处使用程序化解决方案:

      UIBarButtonItem *button1 = [[UIBarButtonItem alloc] initWithTitle:@"Title 1"
                                                                    style:UIBarButtonItemStyleBordered
                                                                    target:self
                                                                    action:@selector(buttonClick1:)];
      UIBarButtonItem *button2 = [[UIBarButtonItem alloc] initWithTitle:@"Title 1"
                                                                    style:UIBarButtonItemStyleBordered
                                                                    target:self
                                                                    action:@selector(buttonClick2:)];
      NSMutableArray *myButtonArray = [[NSArray alloc] initWithObjects:button1, button2, nil];
      toolBar.items = myButtonArray;
      

      【讨论】:

      • 我创建了我的 Navigator Controller 通过“拖出一个 Navigation Controller 以将 iOS 的内置导航逻辑添加到项目中。这将在 storyboard 上创建两个视图控制器 - 导航控制器本身和一个表格视图里面的控制器将是应用程序的初始视图。”那么我应该把上面的代码放在哪里呢?如何获得对工具栏的引用?我的导航器控制器没有“自定义类”。
      • 您应该能够将此代码添加到您的视图控制器中 - 只需将其添加到 viewDidLoad 方法中,然后根据需要将 toolBar.items 更改为 self.navigationcontroller.navigationitem.rightbarbuttonitemself.navigationcontroller.navigationitem.leftbarbuttonitem
      【解决方案3】:

      尝试设置你的栏按钮项目,然后使用:

      self.setToolbarItems([UIBarButtonItem], 动画: false)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-09-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多