相似美圖秀秀的自由拼圖功能是怎麼實現的?

============問題描述============算法


重寫imageview..但不曉得爲什麼我重寫後只能顯示一張圖片,其他的仍是不顯示?

============解決方案1============隊列


不一樣格子的形式能夠定義一個VIEW,最後把整個組合成一個IMAGE

============解決方案2============事件

其實所有功能都能在同一個View裏完成,用一個ArrayList記錄全部的圖片及其相關信息(例如位置,旋轉角度等,寫一個隊列去記錄便可),onTouch事件每次Action_Down的時候檢測點擊位置是否有圖片,若是有則把位於最上面的圖片放到ArrayList的第一位置,接下來全部Action_Move事件所有隻對第一位置的圖片起做用(onDraw裏按ArrayList的倒序畫圖片就好了,給最後一個畫的圖片加上Action_Move中的產生的位置、狀態變化的參數),Action_UP的時候就從新記錄第一位置圖片變化後的信息 其中檢測算法要你本身去想,由於圖片旋轉後4個點的位置就變了,怎麼判斷點擊的地方有沒有圖片的一個角是個小難點,圖片的放大縮小、移動、旋轉所有在onDraw裏用Matrix完成便可,最後生成圖片若是跟預覽圖大小不一樣就乘個比例。 大體的思路就是這樣,代碼是公司的我不方便放,剩下算法、流程什麼的LZ你本身思考一下就好了
相關文章
相關標籤/搜索