2017-11-04 8 views
0

私はチャットアプリを持っており、メッセージアプリと同様のアニメーションを実装することに非常に関心がありました。メッセージを送信すると、inputAccessoryViewからテキストまたはメディアがアニメーション化され、メッセージが表示されるtableView/collectionViewにメッセージが直接作成されます。iOS 11のメッセージのようにinputAccessoryViewからtableViewにテキストをアニメ化

私は現在、inputAccessoryViewにあるtextViewに自分のメッセージを入力しています。ユーザーがenterを押すと、メッセージがtableView dataSourceに追加され、tableViewにロードされます。

inputAccessoryViewからtableViewに直接アニメーションの外観を表示するにはどうすればよいですか。

答えて

1

私はこのアニメーションは、このように動作します信じる:

  1. テキストを押すセンドを入力すると、新しいテキスト気泡がtableView.insertRows(ATを使用して、メッセージテーブルビューの末尾に追加されます[ IndexPath]、with:UITableViewRowAnimation)。これにより、バブルが追加され、テーブルビューがアニメーション化されます。
  2. 同時に、フローティングバブルビューが作成され、テキスト入力ビューの前縁とテーブルビューに挿入された新しいチャットバブルの後縁にまたがるようなテキスト入力ビューに配置されます。
  3. フローティングバブルビューは非常に迅速かつ同時に2つの方向にアニメーション表示されます。テーブルビューの新しいバブルと同じ幅になるまで幅が変化し、追加されたチャットバブルがスクロールするのと同じ速度でyの位置が変化しますtableView上で。
  4. アニメーションが終了すると、浮遊気泡が取り除かれます。

浮動気泡アニメーションをチャットバブルと同期させると、入力テキストがチャットバブルになったように見えます。

私は、アニメーション中にチャットバブルに細心の注意を払うと、ちょうどちょっと変わったように見えるので、オーバーラップビュー - >アニメーション - >重なり合ったビューフローを削除しました浮遊気泡が完全に整列していないかのように見える。

関連する問題