類似安卓Toast的精靈淡入的一種解決方案

想做一個類似Android中Toast的效果,即一個小小的提示框,上面寫着一些提示語,在屏幕下方淡入,顯示1秒,然後淡出,不會對程序產生任何影響,只是讓用戶看一下。

本來的思路如下:

1,add一個Sprite

2,讓這個Sprite執行淡入-延遲-淡出的動畫

問題出現了,就是在剛剛add精靈的時候,精靈會顯示出來,然後纔去執行動畫,儘管馬上又會隱藏以便做淡入的動作,但是能夠被肉眼看出來,效果相當不好。

解決方案:

在沒有add這個精靈前先sprite->setVisable(false);

然後在執行動畫的時候使用回調函數,順序如下:

1,sprite淡出,時間爲0(爲了讓這個精靈不可見)

2,sprite調用回調函數,函數的作用是setVisable(true)

3,執行淡入動作序列。


另外,字體其實也是一個Sprite,但他不會產生上述問題,原因不明。

發佈了35 篇原創文章 · 獲贊 11 · 訪問量 10萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章