主流web框架 surfaceview和view的區(qū)別?
surfaceview和view的區(qū)別?surfaceview和view之間最本質(zhì)的區(qū)別在于,surfaceview可以在新的獨(dú)立線(xiàn)程中重新繪制圖片。視圖必須更新UI主線(xiàn)程中的圖片。更新UI主線(xiàn)程中的
surfaceview和view的區(qū)別?
surfaceview和view之間最本質(zhì)的區(qū)別在于,surfaceview可以在新的獨(dú)立線(xiàn)程中重新繪制圖片。視圖必須更新UI主線(xiàn)程中的圖片。更新UI主線(xiàn)程中的圖片可能會(huì)導(dǎo)致問(wèn)題。例如,如果更新圖片的時(shí)間太長(zhǎng),則主UI線(xiàn)程將被正在繪制的函數(shù)阻止。您將無(wú)法響應(yīng)按鈕、觸摸屏和其他消息。當(dāng)使用surfaceview時(shí),屏幕會(huì)在一個(gè)新線(xiàn)程中更新,所以它不會(huì)阻塞UI主線(xiàn)程。但它也帶來(lái)了另一個(gè)問(wèn)題,即事件同步。例如,當(dāng)您觸摸屏幕時(shí),您需要在surfaceview中進(jìn)行線(xiàn)程處理。通常,您需要一個(gè)事件隊(duì)列設(shè)計(jì)來(lái)保存觸摸事件。這有點(diǎn)復(fù)雜,因?yàn)樗婕熬€(xiàn)程同步。