我正在使用MonoTouch为iOS编写新闻应用程序。数据来自OData网络服务。
我有一个叫做NewsFactory的单例类,它负责查询OData feed。现在在ViewDidLoad方法中,我正在检索新闻文章列表并将其绑定到表视图。
但是 - 我不确定每次启动应用程序时如何刷新它。我不太关心“拉动刷新”。我想确保的是,每次启动应用程序(从头开始或再次激活)时,都会调用Web服务以确保显示最新信息。
此外,我想介绍在启动应用程序时网络连接丢失的情况,并通知用户。使用关闭应用程序(暂停),让我们说网络连接返回 - 如果用户再次打开应用程序,我想确保我显示最新的新闻文章。
我正在以编程方式构建视图层次结构。我有导航控制器和带有5个标签的标签栏控制器。我的目标是iOS 5。
我尝试使用OnActivated和ViewWillAppear,他们并没有完全按照我的需要做。这是任何iOS应用程序的一个非常普遍的需求,所以必须有一个解决方案 - 我是新手,所以任何帮助都表示赞赏。
答案 0 :(得分:0)
一般来说,如果你调用一个从一个源加载的方法(让我们说一个包含数据的文本文件),你必须考虑,然后你改变源(更改文本数据),但是调用加载类时的方法相同,然后在加载新类时会出现新数据。
例如:
- (void) loadView {
NSString *testString = [NSString stringWithContentsOfFile:filePath];
textView.text = testString;
}
此示例显示将文件中的文本设置为UITextView实例。如果你第一次加载它并且文件包含“Hi”的内容,那么textView会说你好。如果您更改它,然后调用相同的方法,它将在您第二次加载应用程序时显示更改的文本。
重点是,如果您更改数据,然后调用相同的方法,那么您将看到差异。除非你正在使用数据库。
如果您提供示例代码,我会给您一个更好的示例。
编辑:不确定您的自定义类是否附带此函数,但它包含在常规UITableView类中:
[tableView reloadData];
您可以在内部更改数组后调用它。