私はlibspotifyで遊んでいて、少し奇妙なことに遭遇しました。 sp_playlistcontainer_move_playlistのインデックスパラメータは0ベースか1ベースですか?libspotify APIインデックスパラメータ。 0ベースまたは1ベース?
sp_playlistcontainer_move_playlist(ハンドル、0、3、偽)
インデックス0でプレイリストを成功し、移動(:彼らは両方、または多分どちらも:)私は、私は次のような結果に気づく3つのプレイリストを持っている。具体的場合のように見えますプレイリストのリストの最初のもの)をプレイリストのリストの最後に追加します。
sp_playlistcontainer_move_playlist(偽のハンドル、0、1、)
APIの仕様に応じて、私は「自分自身の中にフォルダを移動しようとしている」午前示しているようだSP_ERROR_INVALID_INDATAを返し、失敗しました。それで、入力(オリジナル)インデックスは0ベースで、ターゲットインデックスは1ベースであると推測しました。これは奇妙ですが、この
sp_playlistcontainer_move_playlist(偽、2、0を扱う)
は、私がどうなるかで、プレイリストのリスト(第二のスロットに(インデックス0からの)最初のプレイリストを動くように見えるんコールインデックス1、しかし明らかにlibspotifyによると2)。もちろん
これも
sp_playlistcontainer_move_playlist(偽、0、、2を扱う)
はので、多分、ターゲットインデックスは1ベースではありません...または多分0同棲だけの特別なものです動作します。思考?
ターゲットインデックスはあなたが前にしたいリスト内のアイテムです。したがって、0から1への移動は、0が既に1より前にあるので意味をなさないが、0から2への移動は、スロット1のアイテムがスロット0の場合、スロット0の以前の項目はスロット1(2の前)に移動します。私はまだ奇妙なことだと思いますが、もし私がスロット3に移動すれば(つまり、リストの最後にインデックス2が最後の '有効な'インデックスです)、newPositionが3であると言った移動コールバックを取得します。現実は2です。 –