【问题标题】:iPhone UITableViewiPhone UITableView
【发布时间】:2011-06-11 20:32:41
【问题描述】:

我有一个 iPhone 应用程序,它有一个 UITabBarController,其中包含多个 UITableViews。我需要能够向每个UITableView(在每个选项卡内)添加项目,但是我的 Google-fu 让我非常失望,以至于我找不到如何在右上角添加“+”按钮的示例,在导航项中。这个“+”按钮将打开一个子视图来输入新项目的信息,一旦我得到按钮出现,我应该能够处理这些信息。我想以编程方式执行此操作,而不是通过 IB。有人能启发我吗?

【问题讨论】:

标签: iphone uitableview uitabbarcontroller


【解决方案1】:

您可以像这样设置导航栏右侧的按钮:

    self.navigationItem.rightBarButtonItem = button;

按钮需要是 UIBarButtonItem。您可以创建 UIBarButtonItem 并为按下按钮时添加一个目标,如下所示:

button = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(method:)];

目标和动作(按下时调用的选择器)可以更改为您需要的任何内容。

在一行中,它看起来像这样:

self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(method:)];

这应该是创建添加按钮并将其添加到导航项所必需的全部内容。

上一个关于使用 UIButton 的答案如下:

这就是您创建常规的方式 按钮,如有必要:

UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[button addTarget:self action:@selector(addButtonPressed)

forControlEvents:UIControlEventTouchUpInside];

这将调用 addButtonPressed 在 创建按钮的类, 当它被按下时。您可以更改 目标和选择器到任何你 需要。

一起:

UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[button addTarget:self action:@selector(addButtonPressed)

forControlEvents:UIControlEventTouchUpInside]; self.navigationItem.rightBarButtonItem = 按钮;

希望这会有所帮助!

【讨论】:

  • 原来它需要是一个 UIBarButtonItem,而不是一个普通的 UIButton。它确实设置为 self.navigationItem.rightBarButtonItem。
  • 啊,有趣!谢谢你指出这一点。我会相应地编辑答案。
【解决方案2】:

将 UIBarButtonItem 设置为 self.navigationIten.rightBarButtonItem 并处理其操作。
要添加行,请使用 tableView 的 insertRowAtIndexPath 方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-12-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多