1

I am sending my text from a view-1 to another view-2 which has a UITableView. When I push my data I to the other view-2 I can't see the data until I close the application and open it again I can see that data in the table view.

I have used [self.navigationController popToRootViewControllerAnimated:YES]; and then reload the the table view but it doesn't work.

More details; A(Add person button with UITableView)-> B(text field with submit button) -> A(Data shown on the table view). This is what I wanna do.

Could anybody help me please?

Here is my full code My Sample Code

Thanks from now.

4

3 回答 3

2

我看过你的代码,发现了一个问题。只需将下面的代码从viewDidLoadtoviewWillAppear方法

self.dataArray = [[NSUserDefaults standardUserDefaults] objectForKey:@"myTxtList"];
self.dateArray = [[NSUserDefaults standardUserDefaults] objectForKey:@"myDateList"];

愿这能解决你的问题。

快乐编码:)

编辑 1

好的,新的原因可能是我在您的代码中发现的submit方法(IBAction)。

您创建了新的视图控制器并刚刚进入导航控制器的根视图,因此更改第一行功能

ViewController *push = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];

viewController *push = [self.navigationController.viewControllers objectAtIndex:0];

随着上面的变化,即我的原始答案也添加了编辑后的答案并查看。

愿这能解决你的问题。

快乐编码:)

最终编辑

我遇到了问题,并在您的代码中进行了如下更改

在 ViewController.h 文件中,而不是

@property (nonatomic, strong) NSArray *dateArray;

利用

@property (nonatomic, strong) NSMutableArray *dateArray;

下一个更改是在viewWillAppear:animated方法中的 ViewController.m 文件中,而不是

self.dataArray = [[NSUserDefaults standardUserDefaults] objectForKey:@"myTxtList"];
self.dateArray = [[NSUserDefaults standardUserDefaults] objectForKey:@"myDateList"];

利用

[self.dataArray setArray:[[NSUserDefaults standardUserDefaults] objectForKey:@"myTxtList"]];
[self.dateArray setArray:[[NSUserDefaults standardUserDefaults] objectForKey:@"myDateList"]];

您的应用程序将按预期运行,没有错误或崩溃。

快乐编码:)

于 2012-07-11T12:18:51.653 回答
1

尝试使用[self.navigationController PopViewControllerAnimated: YES]; 可能对您有帮助。

于 2012-07-11T10:41:57.097 回答
1

如果您尝试将数据从一个屏幕推送到另一个屏幕,请尝试:

[self.navigationController pushViewController:push Animation:YES];

如果您想返回以前的视图,那么以下内容将为您提供帮助:

[self.navigationController popViewControllerAnimated:YES];

如果您想进入导航控制器的根视图,请尝试以下操作:

[self.navigationController popToRootViewControllerAnimated:YES];
于 2012-07-11T11:15:52.093 回答