在“立即开始开发iOS应用程序”中添加新的待办事项

时间:2014-07-05 03:17:46

标签: ios xcode5.1

我是iOS XCode的新手,我正在尝试完成初始示例。一切都按预期工作,在使用断点进行调试时,我似乎无法通过添加待办事项设置一个值以显示在Self.textField中,因此程序只是跳过这些步骤,我回到初始列表。更新:它肯定似乎没有通过这行代码,

if (sender != self.doneButton) return;

因此所有其他代码也不执行。是否与故事板中文本字段的配置有关? - 谢谢!

在AddToDoItemViewController.m中,文本字段中的值似乎没有出现并存储在此代码中。

#import "AddToDoItemViewController.h"

@interface AddToDoItemViewController ()

@property (weak, nonatomic) IBOutlet UITextField *textField;
@property (weak, nonatomic) IBOutlet UITextField *doneButton;

@end

@implementation AddToDoItemViewController

- (void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
    if (sender != self.doneButton) return;
    if (self.textField.text.length > 0) {
        self.toDoItem = [[ToDoItem alloc] init];
        self.toDoItem.itemName = self.textField.text;
        self.toDoItem.completed = NO;
    }
}

在ToDoListTableViewController.m中,操作只看到该项为NILL,所以它已完成......

- (IBAction)unwindToList:(UIStoryboardSegue *)segue
{
    AddToDoItemViewController *source = [segue sourceViewController];
    ToDoItem *item = source.toDoItem;
    if (item !=nil) {
        [self.toDoItems addObject:item];
        [self.tableView reloadData];
    }
}

它使我疯狂,因为我让其他一切工作正常并且我正在学习调试器有多好,但我无法看到问题出在哪里。您知道是否可以在某处下载最终的代码示例吗?

感谢您的帮助。这是7月4日,我不会睡一会儿...:}

1 个答案:

答案 0 :(得分:0)

我检查过该文件。你做错了什么。在示例中,doneButtonUIBarButtonItementer image description here

您是否也这样做了:

  

要创建展开segue,请通过源视图控制器XYZAddToDoItemViewController的Dock中的Exit图标将Cancel和Done按钮链接到unwindToList:动作。