0

すべての送信チャット バブルに送信済み/未送信ステータス メッセージを追加しようとしています。このために、heightForCellBottomLabelAtIndexPath メソッドから 40 を返しています。

また、 attributedTextForCellBottomLabelAtIndexPath メソッドから、属性付きの文字列を返しています。例えば、

  1. NSMutableAttributedString *hogan = [[NSMutableAttributedString alloc] initWithString:@"Presenting the great... Hulk Hogan!"];

  2. [hogan addAttribute:NSFontAttributeName value:[UIFont
    systemFontOfSize:20.0] range:NSMakeRange(24, 8)];

  3. [hogan addAttribute:NSForegroundColorAttributeName value:[UIColor blackColor] range:NSMakeRange(10, 10)];

この後、セル間のスペースが 40 に増えましたが、属性付きの文字列として返されるテキストが表示されません。また、値を 40 から増やし続けると、セル間のスペースは増え続けますが、セル ラベルのテキストは表示されません。

どこが間違っているのか教えてください。

4

2 に答える 2

0

あなたがattributedTextForCellBottomLabelAtIndexPathを使用していると言ったように、テキストは表示されません。以下の行に従ってください。

ステップ 1: cellForRowAtIndextPath に移動します ステップ 2: cell.bottomLabel.text=@"Presenting the great... Hulk Hogan!"; Web サービスからステータス値を取得したら、コレクション ビューをリロードします。その時点で、更新された値が表示されます。

ご不明な点がございましたら、お知らせください。

于 2015-12-21T13:34:19.743 に答える
0

コードに次のメソッドを追加したことを確認してください。

   override func collectionView(collectionView: JSQMessagesCollectionView!, layout collectionViewLayout: JSQMessagesCollectionViewFlowLayout!, heightForCellBottomLabelAtIndexPath indexPath: NSIndexPath!) -> CGFloat {
        return 30.0;
    }
于 2016-07-29T14:02:28.417 に答える