簡體   English   中英

將inputAccessoryView中的文本動畫化為tableView,例如iOS 11消息應用程序

[英]animate text from inputAccessoryView to tableView like iOS 11 messages app

我有一個聊天應用程序,對實現類似於消息應用程序的動畫非常感興趣。 發送消息會使來自inputAccessoryView的文本或媒體動畫化,在該消息中直接將消息組合到顯示消息的tableView / collectionView中。

我目前正在將消息輸入到inputAccessoryView中的textView中。 當用戶按下Enter鍵時,消息將添加到tableView數據源中並加載到tableView中。

如何直接從inputAccessoryView到tableView呈現動畫外觀。

我相信該動畫的工作方式如下:

  1. 當您鍵入文本並按send時,通過使用tableView.insertRows(at:[IndexPath],UITableViewRowAnimation)將新的文本氣泡添加到消息表視圖的末尾。 這將添加氣泡並向上動畫tableview。
  2. 同時,將創建一個浮動氣泡視圖,並將其放置在文本輸入視圖上,例如其寬度橫跨文本輸入視圖的前端和插入到表格視圖中的新聊天氣泡的后端。
  3. 浮動氣泡視圖在兩個方向上非常快速且同時具有動畫效果:其寬度會不斷變化,直到達到與tableView上新氣泡相同的寬度為止,並且其y位置會隨着添加的聊天氣泡在tableView上滾動而以相同的速度變化。
  4. 然后,當動畫結束時,將刪除浮動氣泡。

如果您將浮動氣泡動畫與聊天氣泡很好地同步,則似乎輸入文本“成為”了聊天氣泡。

我相信他們使用了這種創建重疊視圖->動畫->刪除重疊視圖流的方法,因為如果您在動畫過程中密切關注聊天氣泡,那么到最后,布爾值似乎會稍微改變一點,就像浮動氣泡未完全對齊。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM