2017-09-04 38 views
0

我們有要求重新排列光滑的網格行。重新排列光滑的網格中的行

我在每一行都有向上/向下的圖標,我想要實現動畫,點擊'向上'圖標應該將行向上移動'1'位置,但是光標不能將其焦點從當前行移開。其他行應重新排列他們對'點擊行'的立場。

請建議解決這個問題。謝謝

+0

這個問題需要更多的細節。當你點擊圖標時,視圖向上移動了多少行?當你說'光標不能移動它的焦點'時,你的意思是它保持在屏幕上的同一個位置,這意味着現在不同的行具有焦點? –

+0

添加了更多有問題的細節。 所以,基本上我想實現這一點,不要移動UI上的點擊行,但其他行應重新排列在UI上。 例如:如果我在UI上點擊了第3行的'向上'按鈕,第2行應該向下移動,並且光標位置不應該從第3行'向上'按鈕移動。 – ggtffg

回答

0

你基本上想要一個排序功能。我選擇的方法取決於後端數據庫如何存儲排序順序,如果你堅持數據庫。
如果不持久化數據,

  • 通過任何你想要的其他列是默認的排序順序創建一個額外的列SortOrder的,排序並設置SortOrder的1,2,3,...,N
  • 創建使用格式化的按鈕,使上/下按鈕調用JavaScript是
    • 開關與前行的排序號/後
    • 度假村和重新渲染電網
    • 組使用grid.setActiveCell()和grid.focus()

Pesonally聚焦(如果需要的話),以所需的行,我存儲SortOrder的作爲INT數據庫列,並將其設置爲所有如果不需要自定義排序,則可以使用次級默認排序列。然而,排序索引算法顯着更復雜。