2012-09-27 29 views
0

我正在尝试编写一个天气通知中心小部件,它可以像系统的雅虎天气小部件一样工作:轻点小部件,打开我自己的天气应用程序,选择一个城市,小部件显示我选择的城市的天气。 但我不知道小部件如何获取天气应用程序的城市设置。我使用* notification_center_widget * .nic来构建我的小部件,这使得它看起来像是一个在公告板上运行的独立应用程序(我是否正确?)。现在天气应用程序和小部件都使用存档来保存城市设置。通知窗口小部件如何获取应用程序的设置?

系统的天气小工具如何做到这一点?

天气应用可以直接在天气小工具包中写入文件吗?或天气小部件直接读取天气应用程序中的文件?

我也尝试过使用的OpenURL来选择城市名传递给小部件:在资源文件夹添加URL方案到Info.plist中,并按照UIApplicationDelegate协议,实现handleOpenURL功能。但它不起作用。

我试图使用presentModalViewController:弹出citySelectViewController而不是在另一个应用程序中设置城市,但viewcontroller只显示小部件呈现的小区域。

在此先感谢。

回答

0

我发现一种方式似乎有点像在另一个应用程序中设置窗口小部件的城市作弊。我让这个小部件将城市设置数据存档在包的根文件夹中(可以通过iFile查看)。由于小部件包将被安装到特定的文件夹中。天气应用程序可以使用bundleWithPath在用户完成城市选择时轻松获取小部件的捆绑和存档城市设置。然后,当小部件再次运行时,它将读取城市设置数据,这些数据已经被天气应用程序更改,并显示我们选择的城市的天气。

相关问题