public static int MaskField (Rect position, GUIContent label, int mask, string[] displayedOptions, GUIStyle style= EditorStyles.popup);
public static int MaskField (Rect position, string label, int mask, string[] displayedOptions, GUIStyle style= EditorStyles.popup);
public static int MaskField (Rect position, int mask, string[] displayedOptions, GUIStyle style= EditorStyles.popup);

파라미터

positionRectangle on the screen to use for this control.
labelLabel for the field.
maskThe current mask to display.
displayedOptionA string array containing the labels for each flag.
styleOptional GUIStyle.
displayedOptionsA string array containing the labels for each flag.

반환

int The value modified by the user.

설명

Makes a field for masks.

Note: The mask values for the flags associated with each option in the menu will be consecutive powers of 2 starting with 1, i.e. 1, 2, 4, 8, 16, and so on.


Simple window that shows the mask field.

using UnityEngine;
using UnityEditor;

class SimpleMaskUsage : EditorWindow { int flags = 0; string[] options = { "CanJump", "CanShoot", "CanSwim" };

[MenuItem("Examples/Mask Field Usage")] static void Init() { var window = GetWindow<SimpleMaskUsage>(); window.Show(); }

void OnGUI() { flags = EditorGUI.MaskField(new Rect(0, 0, 300, 20), "Player Flags", flags, options); } }