入れ替えやソート可能な配列「Reorderable-List」を使ってみる

Unity
スポンサーリンク

最近、順次実行のイベント作成していたときに気づいたのですが、配列で管理していると入れ替えが大変なんですよね。

なので今回は入れ替え可能な「ReorderableList」なるものを組み込むことにしました。
これで後々変更があってもラックラクですよ!

ダウンロード

まずはダウンロードです。
こちらに最新のパッケージがあります。
https://github.com/cfoulston/Unity-Reorderable-List

そして下記赤丸のダウンロードします。

無事ダウンロードできました。

プロジェクトにインストール

Packagesウィンドウを開く

まずPackagesウィンドウを開きます。
ウィンドウは画面上部のメニュー「Window」→「Package Manager」から開くことが出来ます。

package.jsonを読み込む

  1. ダウンロードしたzipファイルを解凍。
  2. そしてPackagesウィンドウの左上にある+マークを押して「Add package from disk…」を押す。
  3. 「Unity-Reorderable-List-master」フォルダにある「package.json」を追加します。

これでインストール完了です。
では早速スクリプトで使ってみましょう。

2020/02/06追記

差分を見るとこちらのようにローカルを指しているので
プロジェクトにオールインワンとして入れ込みたい場合はAsset直下にフォルダを入れてください。その際、「Package Manager」での追加は不要なので削除しておいてください。

利用方法

使い方はこんな感じです。
継承で専用リストを作成してそれを公開する感じです。

sampleList.cs
using System.Collections.Generic;

public class SampleList : MonoBehaviour
{
    // リストを定義
    [System.Serializable]
    public class ExampleChildList : Malee.ReorderableArray<EventData>{};

    // リスト
    [SerializeField]
    [Malee.Reorderable] ExampleChildList EventReorderableList;
}

使用時の画面

プロパティを編集するとこんな感じになりました。
めちゃくちゃ便利です。

最後に

いかがでしたでしょうか?
これまでのリストは自分で削除したり追加したりかなり手間が掛かっていたのでこの機能は凄いありがたいですね。

リストを使っていて不便だな~と感じる方はぜひ組み込んでみてくださいね。
ではここまでお読みいただきありがとうございました。

 

コメント

スポンサーリンク
タイトルとURLをコピーしました