2016-08-24 22 views
0

JSQMessagesViewControllerを実装しようとしていて、Ray Wenderlichチュートリアル(https://www.raywenderlich.com/122148/firebase-tutorial-real-time-chat)に従っていますが、UIがビューコントローラに表示されず、空白です。 これは私のポッドファイルです。JSQMessagesViewControllerを使用するときUIが表示されない

source 'https://github.com/CocoaPods/Specs.git' 
use_frameworks! 
target "Sell Goods" do 
    pod 'Firebase' 
    pod 'Firebase/Storage' 
    pod 'Firebase/Database' 
    pod 'Google/SignIn' 
    pod 'JSQMessagesViewController' 
end 

Iは架橋ヘッダを使用して試みたが、それは動作せず、私はステップバイステップのチュートリアルを行いました。

ChatViewController

にセグエ
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { 
    guard let editingVC = segue.destinationViewController as? ChatsViewController 
     else { 
      preconditionFailure("Bad") 
     } 
    editingVC.senderId = userID 
    editingVC.senderDisplayName = userName 
}  

ChatViewController

import Firebase 
import JSQMessagesViewController 

class ChatsViewController: JSQMessagesViewController { 
var messages = [JSQMessage]() 
var outgoingBubbleImageView: JSQMessagesBubbleImage! 
var incomingBubbleImageView: JSQMessagesBubbleImage! 
override func viewDidLoad() { 
    title = "ChatChat" 
    setupBubbles() 
    //collectionView!.collectionViewLayout.incomingAvatarViewSize = CGSizeZero 
    //collectionView!.collectionViewLayout.outgoingAvatarViewSize = CGSizeZero 

    // Do any additional setup after loading the view. 
} 

override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
    // Dispose of any resources that can be recreated. 
} 

override func viewDidAppear(animated: Bool) { 
    resetScreen = true 
} 
private func setupBubbles() { 
    let factory = JSQMessagesBubbleImageFactory() 
    outgoingBubbleImageView = factory.outgoingMessagesBubbleImageWithColor(
     UIColor.jsq_messageBubbleBlueColor()) 
    incomingBubbleImageView = factory.incomingMessagesBubbleImageWithColor(
     UIColor.jsq_messageBubbleLightGrayColor()) 
} 
override func collectionView(collectionView: JSQMessagesCollectionView!, 
          messageBubbleImageDataForItemAtIndexPath indexPath: NSIndexPath!) -> JSQMessageBubbleImageDataSource! { 
    let message = messages[indexPath.item] 
    if message.senderId == senderId { 
     return outgoingBubbleImageView 
    } else { 
     return incomingBubbleImageView 
    } 
} 

override func collectionView(collectionView: JSQMessagesCollectionView!, 
          messageDataForItemAtIndexPath indexPath: NSIndexPath!) -> JSQMessageData! { 
    return messages[indexPath.item] 
} 

override func collectionView(collectionView: UICollectionView, 
          numberOfItemsInSection section: Int) -> Int { 
    return messages.count 
} 
override func collectionView(collectionView: JSQMessagesCollectionView!, 
          avatarImageDataForItemAtIndexPath indexPath: NSIndexPath!) -> JSQMessageAvatarImageDataSource! { 
    return nil 
} 

} 
+0

を呼び出す必要があります。もっと情報が必要です。 – Brandon

+0

投稿を編集しました。 –

+0

'super.viewDidLoad'と' super.viewDidAppear'を呼び出す必要があります – Brandon

答えて

1

あなたは私達はちょうど私達にあなたのポッドファイルを示すことで何が起こっているかを推測することはできませんsuper.viewDidLoad & super.viewDidDisappear

関連する問題