Closed2

アウトラインにおけるDrag&Drop UIのベストプラクティス

山田良治山田良治

アウトラインでのDrag&Drop UI、insertAtとinsertIntoの両方のオペレーションを許可すると途端に操作ミスしやすくなるな。

よく標準Appを観察すると、Finderではそもそもソートして並ぶのでinsertAtはないし、XcodeではInsertIntoは実装可能なのにおそらく意図を持って実装していない。

(例外的にReminderでは両方実装されている)

Xcodeのデザインパターンが秀逸で、これだとある階層の中にノードを入れたい時に事前に開いてからじゃないと実行できないから不便じゃないのと思うけど、Spring Loadsで解決している。collaplsedなフォルダ直下でホールドすると、ちゃんとexpandしてくれる

ここから学ぶに「基本的にアウトラインでのDrag&Drop UIではinsertAtとinsertIntoのどちらか一方のみをサポートし、もう一歩踏み込んだUX(使い心地)の提供としてSpring Loadsの利用を検討する」という感じで捉えれば良いと思った。

右記のツイートの内容を転記: https://twitter.com/yosshi_4486/status/1661611318808559622

このスクラップは28日前にクローズされました