簡體   English   中英

在QML中的各種動態加載的組件中使用Image

[英]Use Image in various dynamically loaded Components in QML

我想要達到的目標:
切換項目的外觀,其中描述外觀的組件將動態加載,但公共元素不會多次加載。

可以說,我有一個帶有圖標(例如封面)和標題(例如音樂標題)的元素列表。
單擊/拖動時,它會改變形狀,因此可以顯示其他信息(例如,時長,藝術家等)。
最后,我有一個DropArea,可以在其中放置這些元素。 在這里我只想顯示圖標。

如我所知,不建議預先加載所有三種形式,而僅移動其他對象的可見性和其他參數,因為第一個列表是ListView。
因此,我決定創建多個組件,然后使用Loader加載它們。
另一方面,這會導致一些開銷,因為每次加載和移動Icon時,這對於所有組件都是通用的,形狀都會發生變化。

到目前為止,我的解決方案是將圖像加載到組件外部,每次重新父化時,形狀都會發生變化。 但是,這感覺很奇怪,與“立即加載所有內容並重置可見性和定位器”方法相比,我不確定這是否不是性能較低的方法

正確的方法是什么?

對於效率方面,最有效的方面應該是僅動態加載真正動態的內容,而使其他內容保持靜態(或稱為聲明性)。 我認為,在您的應用中,該圖標應具有聲明性。

關於重配,實際上重配在Qt Quick編程中非常普遍,尤其是在動態加載上下文中。 Qt Quick中的父級與QObject的概念不同。 這只是視覺管理(不是內存管理)。 這就是為什么您可以看到Qt Quick甚至在State / Transition中提供ParentChange的原因。

暫無
暫無

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

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