2013-10-15 54 views
1

我想創建一些使用iOS SDK的地圖附件的開放圖故事,我有一些問題。使用Facebook開放圖的故事與地圖附件(GeoPoint)

首先,我遇到了創建對象的問題......我設置了一個繼承自「Place」的對象。所以這裏是第一個問題「如何使用iOS Facebook SDK設置GeoPoint屬性?」......經過這麼多次嘗試之後,我放棄了......所以我創建了一個從「Object」繼承的對象,並且我創建了一個自定義屬性命名爲「位置」爲GeoPoint。但是這個解決方案給我帶來了同樣的問題:「如何使用iOS Facebook SDK設置GeoPoint屬性?」

我只需要創建一個帶有顯示場地位置的地圖的Story。

這是我的目標:

id<FBOpenGraphObject> openGraphObject = (id<FBOpenGraphObject>)[FBGraphObject openGraphObjectForPost]; 
[openGraphObject setType:@"appnamespace:venue"]; 
[openGraphObject setTitle:[currentVenue name]]; 
[openGraphObject setObject:@"en_US" forKey:@"og:locale"]; 
[openGraphObject setObject:[[currentVenue locationLatitude] stringValue] forKey:@"appnamespace:location:latitude"]; 
[openGraphObject setObject:[[currentVenue locationLongitude] stringValue] forKey:@"appnamespace:location:longitude"]; 

但是不要工作。

它出現在Facebook瀏覽器對象中,但只有名稱。其他屬性爲零。

有人可以幫助我嗎?

回答

1

屬性不需要以您的appnamespace爲前綴,每個':'都意味着一個新的對象或字典。

嘗試類似:

[openGraphObject setObject:@{@"latitude": [currentVenue locationLatitude], 
          @"longitude": [currentVenue locationLongitude]} 
       forKey:@"location"]; 
+1

我可以適用於地圖附件變焦?我將分享一個位置,並且地圖顯示如此之遙......我想在該位置應用放大 –

2

您的自定義屬性應該在一個名爲data字典添加。 在我的Facebook應用程序中,我有一個對象(繼承自Object),其名稱爲position,它是一個geo_point。

這是我用它來創建對象的代碼:

NSMutableDictionary<FBOpenGraphObject> *object = [FBGraphObject openGraphObjectForPost]; 
object.provisionedForPost = YES; 
object[ @"title"] = @"Title"; // for og:title 
object[ @"type"] = @"my_namespace:my_object"; 
object[ @"data" ] = @{ @"position": @{ @"latitude": @55, @"longitude": @12 }}; 
相關問題