1
我使用兩個表格,第一個包含「團隊」,第二個「團隊成員」,並基於第一個表格選項進行填充。我還根據選擇顯示了各種統計數據,無論是團隊還是特定成員。如果沒有選擇成員,則顯示團隊統計信息,否則顯示成員統計信息。攔截表格項目上單擊事件的最佳方法
我在表格上使用ItemChangeListeners來重繪統計數據,但是這阻止我點擊已選擇的團隊以從該團隊中「取消選定」選定的成員,因爲在該情況下沒有事件被觸發。作爲一種解決方案,我還在Team表上使用了一個ClickListener,但是它似乎只在單擊該單詞時才起作用(而不是在整個單元上工作)。
teamsTable.setClickListener("name", new Table.CellClickListener() {
@Override
public void onClick(Entity item, String columnId) {
if (teamsDs.getItem() == item) {
teamsDs.setItem(null);
teamsDs.setItem((Team) item);
} else {
teamsDs.setItem((Team) item);
teamsTable.setSelected((Team) item);
}
}
});
有沒有更好的方法來捕捉表格單元格上的點擊?還是有更好的方法來解決這個問題嗎?
我以前見過「隻字不全」的東西。嘗試在元素上放置背景顏色和/或寬度高度(如果可能)。 –
Table.CellClickListener旨在僅處理文本點擊。 您是否嘗試使用Ctrl +單擊取消選擇表格中的行?在這種情況下,CollectionDatasource應該觸發ItemChange事件。 – jreznot
實際上,我需要通過單擊已經選擇的表格元素來取消選擇另一個表格(和數據源)中的元素,所以我正在尋找單元格單擊事件(如果可能的話) – gmlion