如何保存网页并点击后打开它?

时间:2016-04-08 21:54:38

标签: ios swift

enter image description here

附件是我的视图控制器的屏幕截图。当用户在互联网上搜索时,我如何实现这些功能?

  1. 保存当前网页(点击&#34后可能会转到另一个视图控制器;保存")

  2. 我的想法是保存在一个表格视图上,标题为

  3. 点击标题后,显示保存的整页内容。

  4. 如果用户在某个带附件的网站上回复电子邮件,他们还可以在应用中保存附件(word,pdf等)。

  5. 我用谷歌初始化了网络视图。问题是要保存的页面可以是任何NSURL,我不知道该怎么做。

    或者你可以建议完全不同的方式,只要我能实现这些功能。

2 个答案:

答案 0 :(得分:1)

为了将来参考,您应该包含一些代码......但无论如何,我只是将NSURL设置为NSUserDefaults中每个网页的字符串,然后调用主应用程序打开URL方法。

...一样

NSUserDefaults.standardUserDefaults.setObject("YourURL" forKey: "URLKey")
NSUserDefaults.standardUserDefaults.synchronize()

然后检索它......

if let urlString = NSUserDefaults.standardUserDefaults.objectForKey("URLKey") {

let url = NSURL(string: urlString)

UIApplicationSharedApplication.openURL(url)

}

我把这个代码写在了我的头顶,所以它可能需要一些调整,但我希望它有所帮助!

答案 1 :(得分:0)

如果您希望用户保存许多网页,则使用NSUserDefaults来实现它。您应该使用名为CoreData的内容。这是因为NSUserDefaults一次只能保存一个网址。如果你想保存另一个,你需要另一把钥匙才能这样做。

这基本上是你需要做的。您创建一个新的Core Data Model文件(.xcdatamodeld)。添加名为SavedUrls的实体。将属性添加到名为urlString的实体。然后生成一个NSManagedObject子类。

要保存数据,请从App Delegate获取托管对象上下文。使用继承的初始化程序创建SavedUrls的新实例。并将属性更改为要保存的URL。然后只需在上下文中调用save

要获取数据,请获取托管对象上下文并创建一个NSFetchRequest以从数据库中获取。

在此处了解详情:

https://www.raywenderlich.com/115695/getting-started-with-core-data-tutorial