2014-06-06 20 views
5

Tôi cố gắng triển khai Facebook SDK trong dự án IOS Swift, nhưng tôi không thể bao gồm SDK. Hơn nữa, tôi không biết cách dịch đoạn Objectiv-c này sang Swift:Tạo lớp FBLoginView nhanh chóng

[FBLoginView class]; 

Ai đó có thể giúp tôi?

Trả lời

11

Cách đơn giản nhất tôi thấy là thêm một "Objective-C File" mới vào dự án của bạn.

Cần hỏi bạn "Bạn có muốn định cấu hình tiêu đề cầu nối Objective-C không?" Chọn .

Hai file này sẽ được bổ sung vào dự án của bạn, các tập tin Objective-C và "(tên dự án) -Bridging-Header.h"

Xóa file Objective-C trống bạn bổ sung và mở (tên dự án) -Bridging-Header.h

Thêm nhập của bạn cho Facebook SDK vào tập tin (sử dụng nhập khẩu Objective-C phong cách), ví dụ:

// 
// Use this file to import your target's public headers that you would like to expose to Swift. 
// 

#import <FacebookSDK/FacebookSDK.h> 

Lưu header và bây giờ bạn có thể truy cập vào Facebook SDK trong mã nhanh chóng của bạn. Bạn không cần cần thêm "nhập FacebookSDK" vào các tệp nhanh chóng của mình. Ví dụ:

import UIKit 

class LoginViewController: UIViewController { 
    var fbl: FBLoginView = FBLoginView() 
    // etc... 
+0

Tôi không muốn thêm một "Tệp Mục tiêu-C" mới mà là một Khung. Tôi làm theo [tài liệu Facebook] (https://developers.facebook.com/docs/ios/getting-started/) và thả tệp ".framework" vào dự án của tôi. Tôi có thể tạo quan điểm của tôi và thêm lớp "FbLoginView", nhưng tôi không thể khởi tạo một lớp FBLoginView. – cappie013

+1

Phải, lý do duy nhất bạn cần thêm tệp Objective-C là tạo tệp Bridging-Header (tôi tin rằng điều này cũng đặt cờ trong dự án của bạn ở đâu đó). File Objective-C là không cần thiết, nó chỉ là một cách nhanh chóng để tạo tập tin tiêu đề Bridging và thiết lập cờ trong dự án của bạn. Sau đó thêm việc nhập vào tiêu đề Bridging cho phép bạn truy cập FBLoginView trong dự án của bạn. Bạn vẫn cần phải có khung SDK Facebook đã có trong dự án của bạn. – DennyFerra

+0

Làm việc như một sự quyến rũ! Cảm ơn sự giúp đỡ của bạn ! Tôi sẽ cố gắng tìm một cách dễ dàng hơn để tạo tệp cầu nối. – cappie013

3

Bạn đang cố gắng làm gì với lớp học?

Trong nhanh chóng bạn có thể tham khảo các lớp học với .self như vậy:

FBLoginView.self 
+0

Theo [Facebook SDK Tài liệu] (https://developers.facebook.com/docs /facebook-login/ios/v2.0), tôi cần tải lớp FBLoginView. Nhưng có vẻ như khuôn khổ không được bao gồm đúng cách. – cappie013

+0

"FacebookSDK.framework" xuất hiện trong "Khung và thư viện được liên kết" của tôi nhưng nó vẫn không hoạt động – cappie013

+0

Chính xác thì 'FBLoginView.self' làm gì? –

0

Believe với các bản cập nhật mới nhất từ ​​Facebook, hàng nhập khẩu cho File header là:

#import <FBSDKCoreKit/FBSDKCoreKit.h> 
#import <FBSDKLoginKit/FBSDKLoginKit.h> 
Các vấn đề liên quan