Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

[Swift]Xcode6.1で確認済み!Hello Worldの次に試したい!超簡単にFacebook投稿 !

More than 5 years have passed since last update.

参考サイト

[最新版]Xcode6 Version 6.0.1で確認済み!SwiftをHello Worldする方法

[Swift]Xcode Version 6.0.1で確認済み!Hello Worldの次に試したい!超簡単にwebViewを表示してみる

1・新規ProjectをSingleViewで作成する

ここではFacebookSampleというプロジェクト名で作成しています。

スクリーンショット 2014-09-20 21.37.52.png

スクリーンショット 2014-09-20 21.38.18.png

スクリーンショット 2014-09-20 21.38.31.png

2・view Controllerを以下のように修正する。(画面のボタンなどはソース内で生成しています。)

//
//  ViewController.swift
//  FacebookSample
//
//  Created by g08m11 on 2014/09/20.
//  Copyright (c) 2014年 Bloc. All rights reserved.
//

import UIKit
import Social

class ViewController: UIViewController {

  var myComposeView : SLComposeViewController!

  override func viewDidLoad() {

    super.viewDidLoad()

    // Facebook用のUIBUtton作成。この時varを省略すると未初期化ということでエラーとなるので注意。
    var myFacebookButton = UIButton(frame: CGRectMake(0, 0, 200, 50))
    myFacebookButton.backgroundColor = UIColor.lightGrayColor()
    myFacebookButton.setTitle("Facebook", forState: UIControlState.Normal)
    myFacebookButton.setTitleColor(UIColor.redColor(), forState: UIControlState.Normal)
    myFacebookButton.addTarget(self, action: "postToFacebook:", forControlEvents: UIControlEvents.TouchUpInside)
    myFacebookButton.layer.cornerRadius = 20.0
    myFacebookButton.layer.position = CGPointMake(self.view.frame.width/2, 200)

    // buttonをviewに追加
    self.view.addSubview(myFacebookButton)
  }

  func postToFacebook(sender : AnyObject) {

    //ServiceTypeをFacebookに指定。
    myComposeView = SLComposeViewController(forServiceType: SLServiceTypeFacebook)

    //投稿するテキストを指定
    myComposeView.setInitialText("こちらはSwiftでiosシュミレータから送られています")

    //投稿する画像を指定
    myComposeView.addImage(UIImage(named: "kura.png"))

    //myComposeViewの画面遷移
    self.presentViewController(myComposeView, animated: true, completion: nil)
  }

  override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
  }
}

point

  • import Socialが必要
  • 画面遷移にpresentViewControllerを使用

3・用意した画像、テキストが表示されれば成功

text_sample_1.gif


Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away