2016-12-12 3 views
0

を見つけることができません。私の質問には、現在、Xamarin.iOSのJSQMessagesViewControllerコンポーネントが実装されていますが、何も問題はありません。他のすべてのメソッドは、トップセルラベルの属性付きテキストを返すものであっても、私には見えます。JSQMessagesViewControllerがheightForCellTopLabelAtIndexPath

ありがとうございました!

答えて

0

で:

これは私が機能を使用する方法です)=

私はこのlibのための任意のXamarin指向のドキュメントを認識していないんだけど、私は喜んであなたの使用例をあげます私はちょうどGetCellTopLabelAttributedTextを使用し、私のユースケースに合わせて修正しました。言い換えれば、私は中央にテキストを配置し、contentInsetを削除してフォントを変更しました。私は行方不明になった方法を探してあきらめた

0

うわー私も、あなたはXamarinのアプリでこのライブラリを使用することができることを知らなかっただけでなく、私はXamarinに何もしないが、それは超クールです。まああなたの質問ごとに。私はその方法を見ることができませんでしたので、多分どちらかのドキュメントがオフになっているが、使用する:

override func collectionView(_ collectionView: JSQMessagesCollectionView!, layout collectionViewLayout: JSQMessagesCollectionViewFlowLayout!, heightForMessageBubbleTopLabelAt indexPath: IndexPath!) -> CGFloat { 
    return firstMessageInSet(indexOfMessage: indexPath) ? 0 : kJSQMessagesCollectionViewCellLabelHeightDefault 
} 

唯一の違いは、それはmessageBubbleTopLabelないと言うあたりCellTopLabelを参照しているということです。私はそれが正しい方法だと思う。私は、これはメッセージの外観に影響を与える方法を示してスクリーンショットで

。最初のメッセージはkJSQMessagesCollectionViewCellLabelHeightDefaultに設定されたサイズと、それを休閑メッセージはそれはあなたが達成しようとしているものであれば、これはあなたのための方法であるので、それは0

Screen shot of Dans JSQ implimentation

に設定されています。そうでない場合は私に知らせてください。私たちができることが他にもあるかどうかがわかります。

良い仕事を続けてください。

+0

ねえダニエル、あなたの答えをありがとう!私もmessageBubbleTopLabelのメソッドしか見つけられませんでしたが、問題はタイムスタンプを表示するためにcellTopLabelを使いたいということです。これは画面の中央に配置されているためのより良い機能があり、私はあなたが提案した名前のためにmessageBubbletopLabelを使用することができます。私は、私はあなたの答えをより魅力的にするいくつかの方法を提案することができる場合、私は笑 – Florensvb

0

私はあなたがGetMessageBubbleTopLabelHeightを探していると思います!

public override nfloat GetMessageBubbleTopLabelHeight (MessagesCollectionView collectionView, MessagesCollectionViewFlowLayout collectionViewLayout, NSIndexPath indexPath) 
    { 
     Message message = Messages [indexPath.Row]; 

     if (message.SenderId == Sender.UserId.ToString()) 
      return 0.0f; 

     if (indexPath.Row - 1 >= 0) { 
      Message previousMessage = Messages [indexPath.Row - 1]; 
      if (previousMessage.SenderId == message.SenderId) 
       return 0.0f; 
     } 
     return 20.0f; 
    } 
+0

をそれを見つける傾ける方法をちょうどまだかなり混乱しています。アドバイスをありがとう@QuintinBalsdonドキュメントと例の使用 –

+0

への参照を追加します! – ruifo

+0

お返事ありがとうございました!残念ながら、これはCellTopLabelではなくMessageBubbleTopLabelに使用されるメソッドです。私はGetMessageBubbleTopLabelAttributedTextとGetMessageBubbleTopLabelHeightをオーバーライドすることができます。どちらもMessageBubbleTopLabel(通常は名前に使用されます)に使用されます。私はまた、GetCellTopLabelAttributedTextを上書きすることができていますが、何私が行方不明ですことを示すために使用されている、または – Florensvb

関連する問題