Programming Serendipity

プログラミングを中心に種々雑多に書き留めます

Unity5 メモ28

  • Panelのクラス
    PanelはText, Button, Sliderなどと違ってそれ自身のクラスを持っていないため、
    スクリプトからアクセスするときはRectTransformで受け取る。

  • スプライト画像の比率を保持
    例えばPanelの子要素にImageを入れてRectTransformのアンカーをストレッチにすると、画像は親要素に合うように拡縮されてしまう。
    Imageコンポーネント内のPreserveAspectにチェックを入れるとこれを防ぐことができる。

  • 複数列のスクロールビュー
    所持キャラクター一覧などの、横3つ縦無限などでスクロール可能なUIを作るには、
    vertical layout groupでスクロールビューを作った後、各ノードに Horizontal Layout Groupを追加して、
    それぞれに3つ要素を入れれば横3列のスクロールビューになる

  • 要素が画面に入りきるかどうかでスクロールバーの表示・非表示を切り替える
    対象のスクロールバーを持ったオブジェクトに以下のスクリプトをアタッチする

public class ScrollbarDisplayer : MonoBehaviour   
{  
    void Start ()   
    {  
        gameObject.SetActive(GetComponent<Scrollbar>().size < 1);  
    }  
}