Social share ง่ายๆ กับ Swift

การเขียน  Share ใน  Xcode สมัยก่อนเป็นปัญหามากไม่ว่าจะเป็น Facebook , Twitter หรือ ฯลฯ  เพราะเมื่อมีการใช้ Framework ของแต่ละอัน  ก็จะมีข้อจำกัดหรือวิธีการเขียนที่แตกต่างกัน  หรือบางครั้งก็ถึงขั้นเกิด error ขึ้น  ทำให้ผู้พัฒนาอย่างเราๆ ต้องปวดหัวหาวิธีแก้ไขกันยุ่งยาก

แต่ในปัจจุบัน  ผู้พัฒนาภาษานี้ได้มีการเขียนการใช้งาน Tools ของเครื่องอย่างง่ายๆเพื่ออำนวยความสะดวกของผู้พัฒนา  งั้นเรามาเริ่มกันเลย

เดียวๆ!!!  อีกนิด ปัจจุบันการแชร์ ส่วนใหญ่จะเป็นการแชร์  Link  แล้วพวก Tools ต่างๆก็จะไปหาข้อมูลต่างๆรวมถึงที่อยู่รูป ใน Matadata ให้เองเกือบทั้งหมด  ทำให้รูปแบบจะเป็นแบบ Share link นะครับ


เริ่มก็สร้างปุ่มก่อนเลย

อยากสร้างไงก็แล้วแต่จะสร้างบน Navigatebar ก็แบบนี้

let logButton : UIBarButtonItem = UIBarButtonItem(title: "Share", style: UIBarButtonItemStyle.Plain, target: self, action: "openShareSocial")
     logButton.tintColor = UIColor.whiteColor()
     self.navigationItem.rightBarButtonItem = logButton

หรือจะสร้างแบบอื่นก็แล้วแต่นะครับ  ให้ไปเรียกฟังชั่นของเราได้เป็นพอ  ในตัวอย่างผมใช้ชื่อ  “openShareSocial”  นะครับ

ทีนี้ก็ฟั่งชั่นเรียกใช้การแชร์  สั้นๆง่ายๆแบบนี้

func openShareSocial(){
let textToShare = "ใส่  Text อะไรก็ได้ที่อยากใส่"
if let myWebsite = NSURL(string: "http://www.uptoyou.life"){
       let objectsToShare = [textToShare, myWebsite]
       let activityVC = UIActivityViewController(activityItems: objectsToShare, applicationActivities: nil)
       if let wPPC = activityVC.popoverPresentationController {
           wPPC.sourceView = self.view
       }
       self.presentViewController(activityVC, animated: true, completion: nil)
   }
}

แค่นี้ก็เป็นอันเสร็จ  ขออธิบายเพิ่มอีกหน่อย  ในส่วนของ wPPC  ใช้สำหรับป้องกัน Error ใน Ipad ที่จำเป็นต้องมี sourceView หากไม่มีในส่วนนี้  Ipad จะเกิด Error ขึ้น