2017-03-24 24 views
0

私は以下のようにプロファイルデータシングルトンクラスを持っています。空の配列を持つ辞書に配列を追加できません

辞書の空の配列にデータを格納しようとしています。

配列にデータを追加した後も、配列の数は

let newFeed = Feed(profilePicture: "image",artistName: "New", 
    videoUrl: "url",videoTitle:"New", videoViews: "160",likes: 
    "200",shoutouts: "200",comments: [],votes: "50", dateCreated: Date(), 
    userActivity :"This user liked your video") 


ProfileData.sharedInstance.add(array: newFeed,artistName:"John Smith") 
を次のように私が辞書に空の配列に配列を追加しようとしている別のビューコントローラでは0

 class ProfileData{ 

      static let sharedInstance = ProfileData() 

      var artistProfileDict = [String : Profile]() 
      var loggedInUserProfile = Profile(artistName: "John Smith", artistDescription: "Admiral of New England, English soldier, explorer, and author.", totalLikes: "174", totalViews: "200", totalFollowing: "100",totalFollowers:"50",imageUrl:"image_singer", feeds:[]) 


      private init() { 
       getProfilesDictionary() 
      } 

      func getProfilesDictionary()->[String: Profile]{ 
       artistProfileDict["John Smith"] = loggedInUserProfile 
       return artistProfileDict 
      } 

      func add(array: Feed, artistName: String) { 

       artistProfileDict[artistName]!.feeds.append(array) 

      } 

     } 

です

は、辞書に空の配列に配列を付加した後、私はまだ、私はここでの問題を把握することはできませんよ0

として、配列の数を取得します。どんな助けもありがとう。ありがとうございました。

プロファイルクラス

struct Profile { 
    var artistName: String 
    var artistDescription: String 
    var totalLikes: String 
    var totalViews: String 
    var totalFollowing: String 
    var totalFollowers: String 
    var imageUrl: String 
    var feeds : [Feed] 

    init(artistName: String,artistDescription:String,totalLikes:String,totalViews:String,totalFollowing:String,totalFollowers:String,imageUrl:String, feeds:[Feed]) { 

     self.artistName = artistName 
     self.artistDescription = artistDescription 
     self.totalLikes = totalLikes 
     self.totalViews = totalViews 
     self.totalFollowing = totalFollowing 
     self.totalFollowers = totalFollowers 
     self.imageUrl = imageUrl 
     self.feeds = feeds 
    } 
} 
+0

プロファイルクラスコードを表示できますか? – Sahil

+0

それはカスタム –

+0

@Sahil構造体を使用するときに初期化子を作成する必要が質問を更新していない:文字列 するvar artistDescription:文字列 するvar totalLikes:文字列 するvar TOTALVIEWS:文字列 VAR totalFollowing:String var totalFollowers:String var imageUrl:String var feeds:[フィード] } 'は同じ結果です –

答えて

0

それはおそらくあなたがProfileDataするのではなく、間違ったクラスArtistProfileDataを使用している細かい

ProfileData.sharedInstance.add(array: newFeed,artistName:"John Smith") 

ProfileData.sharedInstance.artistProfileDict["John Smith"]?.feeds.count // 1 

取り組んでいます。

+0

いいえ私は同じクラスを使用しています。私は質問を掲示している間に間違いを犯しました。 –

+0

更新された質問 –

+0

を確認してください。フィード要素を追加した後に1を返してフィードの数を確認しました。 – Sahil

関連する問題