2017-09-16 14 views
0

私のtvOSアプリケーションでは、動作するサンプルデータを生成するクラスがあります。tvOS - topshelfのクラスからオブジェクトを取り出す方法ServiceProvider.swift?

import Foundation 
import UIKit 

class SampleData { 

    class func initializeSampleData() -> [Object] { 

     var data = [Object]() 

     // Cities 
     let obj_01 = Object(title: "Dubai", 
          country: "United Arab Emirates", 
          cDescription: "Dubai has positioned itself as a global metropolitan city with its majestic buildings.", 
          image: #imageLiteral(resourceName: "city_dubai"), 
          category: "Cities") 

     let obj_02 = Object(title: "Paris", 
          country: "France", 
          cDescription: "The Eiffel Tower is one of the world's more recognizable building landscapes.", 
          image: #imageLiteral(resourceName: "city_paris"), 
          category: "Cities") 

     let obj_03 = Object(title: "Tokoyo", 
          country: "Japan", 
          cDescription: "One of the most crowded cities in the world. So many advertisements!", 
          image: #imageLiteral(resourceName: "city_tokoyo"), 
          category: "Cities") 

     let obj_04 = Object(title: "Madrid", 
          country: "Spain", 
          cDescription: "One of Europe's oldest cities, Madrid skyscape is beautiful year round.", 
          image: #imageLiteral(resourceName: "city_madrid"), 
          category: "Cities") 

     let obj_05 = Object(title: "New York", 
          country: "United States", 
          cDescription: "A view of the Empire State building and its surrounding buildings.", 
          image: #imageLiteral(resourceName: "city_newyork"), 
          category: "Cities") 

     // Sports 
     let obj_06 = Object(title: "Olypics logo", 
          country: "Brazil", 
          cDescription: "Gotta love watching the Olympics whenever, whereever!", 
          image: #imageLiteral(resourceName: "sports_olympics"), 
          category: "Sports") 

     let obj_07 = Object(title: "Rio 2016 Olympics", 
          country: "Brazil", 
          cDescription: "Kicking off the start of the 2016 Olympic games. So much festivities!", 
          image: #imageLiteral(resourceName: "sports_rio2016"), 
          category: "Sports") 

     let obj_08 = Object(title: "Rio 2016 Olympics Mascot", 
          country: "Brazil", 
          cDescription: "A wonderful aerial view of Rio De Janeiro behind the crazy mascot on the suspended lift!", 
          image: #imageLiteral(resourceName: "sports_mascot"), 
          category: "Sports") 

     let obj_09 = Object(title: "Cycling Atheletes", 
          country: "Brazil", 
          cDescription: "Athletes from around the world come and compete against each other in the Olympic games.", 
          image: #imageLiteral(resourceName: "sports_cycling"), 
          category: "Sports") 

     let obj_10 = Object(title: "Runner Athletes", 
          country: "Brazil", 
          cDescription: "Athletes from around the world come and compete against each other in the Olympic games.", 
          image: #imageLiteral(resourceName: "sports_runners"), 
          category: "Sports") 

     // Foods 
     let obj_11 = Object(title: "Sweets", 
          country: "Italy", 
          cDescription: "Who, tell me who does not love Italian sweets! Drewl.", 
          image: #imageLiteral(resourceName: "foods_sweets"), 
          category: "Foods") 

     let obj_12 = Object(title: "Octopus", 
          country: "Italy", 
          cDescription: "A delicasy, and a slimey one at that. It is thought to be a natural aphrodesiac.", 
          image: #imageLiteral(resourceName: "foods_octopus"), 
          category: "Foods") 

     let obj_13 = Object(title: "Bolognese Pasta", 
          country: "Italy", 
          cDescription: "Pasta in all its forms originate from Italian kitchens.", 
          image: #imageLiteral(resourceName: "foods_bolognese"), 
          category: "Foods") 

     let obj_14 = Object(title: "Bruschetta", 
          country: "Italy", 
          cDescription: "Bruschetta is an antipasto consisting of grilled bread rubbed with garlic and topped with olive oil and salt.", 
          image: #imageLiteral(resourceName: "foods_bruschetta"), 
          category: "Foods") 

     let obj_15 = Object(title: "Chocolate Budino", 
          country: "Italy", 
          cDescription: "Warm chocolate budino is a luscious cross between cake and pudding. Yum!", 
          image: #imageLiteral(resourceName: "foods_chocolate_budino"), 
          category: "Foods") 


     data.append(obj_01) 
     data.append(obj_02) 
     data.append(obj_03) 
     data.append(obj_04) 
     data.append(obj_05) 
     data.append(obj_06) 
     data.append(obj_07) 
     data.append(obj_08) 
     data.append(obj_09) 
     data.append(obj_10) 
     data.append(obj_11) 
     data.append(obj_12) 
     data.append(obj_13) 
     data.append(obj_14) 
     data.append(obj_15) 

     return data 
    } 

} 

私は私のtopshelf ServiceProvider.swift内部から同じデータを取得するために、同じクラスの関数を呼び出すことができるようにしたいです。すべてのヘルプははるかに高く評価されて

var topShelfItems: [TVContentItem] { 

    let objects = SampleData.initializeSampleData() 

    //return [] 
} 

:私は次のコードをしようとすると、Xcodeは私に「未解決識別子SampleDataを使用」を与えます。

答えて

1

ターゲット(iphone/ipad/tv/watch /その他のサービス)間でファイルを共有する場合は、Xcodeのファイルをクリックし、画面の右側にある[ターゲットメンバーシップ]オプションが表示されます。コードにアクセスできるターゲットを選択します。

私は自分自身の質問に答えました。私の助言:私がそれについて行く方法でトップシェルフにデータを取得しないでください。トップシェルフにデータを取り込むための定義済みの方法があります。 Appleのコードサンプルをダウンロードしてコードをご覧ください:https://developer.apple.com/library/content/samplecode/UICatalogFortvOS/Introduction/Intro.html

関連する問題