Пример Safari Activity


#1


import UIKit

class SafariActivity: UIActivity {
    var url: NSURL?
    
    
    override func activityImage() -> UIImage {
        return UIImage(named: "SafariActivity")!
    }
    
    override func activityTitle() -> String {
        return NSLocalizedString("Open in Safari", comment:"")
    }
    
    override func canPerformWithActivityItems(activityItems: [AnyObject]) -> Bool {
        for item in activityItems {
            if let url = item as? NSURL where UIApplication.sharedApplication().canOpenURL(url) {
                return true
            }
        }
        return false
    }
    
    override func prepareWithActivityItems(activityItems: [AnyObject]) {
        for item in activityItems {
            if let url = item as? NSURL where UIApplication.sharedApplication().canOpenURL(url) {
                self.url = url
            }
        }
    }
    
    override func performActivity() {
        var completed = false
        
        if let url = self.url {
            completed = UIApplication.sharedApplication().openURL(url)
        }
        
        activityDidFinish(completed)
    }
}

let url = NSURL(string: "http://www.apple.com")!
        
let activityViewController = UIActivityViewController(activityItems: [url], applicationActivities: [SafariActivity()])
presentViewController(activityViewController, animated: true, completion: nil)

Скачать