2010-10-07 187 views

回答

2

我很確定沒有辦法讓QML ListView多選。 Qt Declarative專注於觸摸屏的使用,並沒有任何有意義的方式在純觸摸UI中多選。

+1

當然,你可以自由地實現一個委託,該委託提供了一種機制來自由選擇和取消選擇單個項目,但是由你來實現所有必需的概念。 – teukkam 2010-10-11 11:55:46

+0

您對多選Google相冊有什麼看法? (當然,這是6年後,但仍然如此。) – 2016-09-15 23:44:20

+1

您的意思是移動應用程序,您在哪裏通過長按照片進入(多)選擇模式?是的,絕對是一個非常有意義的方式來實現觸摸UI中的多選。顯然,我不知道8年前我在說什麼。從那時起,我幾乎已經關閉了Qt,所以我不知道Qt Quick在今天的表現如何。 – teukkam 2016-09-16 08:07:10

1

您可以嘗試獲取ListItem的數據並將其存儲到一個奇數單擊的數組,並且在甚至單擊時從數組中移除ListItem的數據。可能是一個簡單的鍛鍊,而不是創建一個像複選框項目列表。

5

做這樣的事情:如果一個元素被點擊,設置它的屬性被選中(或者你叫它),並且在委託中設置如果選擇是真的,那麼它的格式應該是不同的。另外將它添加到某個列表中,以使用它。

+0

根據文檔:「委託根據需要被實例化,隨時可能被銷燬,它們是ListView的contentItem的父元素,而不是視圖本身,State不應該**存儲在委託中。」_確保您使用數據模型或其他外部來源來存儲'selected'屬性,而不是委託上的屬性。 – Phrogz 2016-09-01 05:13:46

+0

@Progro我很多次見過這個文檔。如果國家對每個代表本身都很重要呢?如果外部消息來源不需要了解代表中的狀態,我不會看到問題。你怎麼看? – WJR 2017-03-17 21:21:41