簡體   English   中英

在App啟動過渡動畫期間,UIView內容不動畫

[英]UIView content does not animate during App launch transition animation

我認為我的問題可以很簡單地說:UIView的內容可以更新/修改/動畫化嗎?在視圖轉換期間是否可以顯示這些更改? 如果是這樣,如何使它起作用?

我對iOS應用啟動時創建的重復NSTimer進行了微不足道的測試。 它大約每0.05秒增加一個計數器,並將增加的計數顯示到位於Interface Builder(IB)中的UIView上的UILabel中。

除非我在下面提到這種情況,否則內容會在iPhone屏幕上連續刷新,刷新率似乎可以在NSTimer精度等可接受的公差范圍內。(嘿,這只是對概念的一種檢驗)。

因此,問題是:發生應用程序啟動轉換時,不會刷新UILabel內容。 (最初的UIView似乎在屏幕外長出並放大以填滿整個屏幕。)

過渡完成后,由於NSTimer在后台觸發,UILabel的內容“跳”到了合理的數量……僅是,過渡期間未重繪內容。 我確實嘗試了以下方法:[myLabel setNeedsDisplay]; 在每次增量和標簽內容更新之后,它什么都不做。 我猜問題出在UIView或UIViewController上?

抱歉,如果我的術語在這里很糟糕,並希望有一個簡單的解決方案,除了我在進行的任何搜索中都找不到,因為使用了錯誤或錯誤的術語。

另外,我可以發布代碼,但是很難想象會是什么。 應用程序啟動過渡動畫不是我們觸發或控制的……唯一的其他代碼是NSTimer,它在過渡過程中令人滿意地觸發-實際上只是UIView內容沒有重繪或其他?

哦,另一個想法是:我不一定期望過渡期間會平滑地繪制黃油狀的UIView,但我正在考慮的是我最終想嘗試的方法,一旦我知道它甚至可以工作...即使在繪制過程中只有少數UIView重繪過渡看起來足夠好。 當然,它比過渡結束時看起來像是“流行音樂”要好得多。

不知道您的意思是“應用啟動過渡動畫不是我們觸發或控制的。” 您是在談論從default.png到rootViewController的過渡嗎?

無論哪種方式,我都認為您的標簽不會在動畫過程中更新,因為發生動畫時,它實際上是一個新的“表示層”,而不是標簽正在更新的實際層。 您可能想嘗試在視圖上調用setNeedsDisplay。 這樣做可能無濟於事,但請查看表示層上的文檔,也許您會找到一個解決方案: “ CALayer,presentationLayer”

視圖在屏幕上逐漸擴展的初始視圖是啟動圖像。 它只是一個png,因此無法設置動畫。 除了該圖像,直到應用程序完成加載后,任何內容都不會更新到屏幕。

暫無
暫無

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

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