Version: 2023.1
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);

参数

position 屏幕上用于此控件的矩形。
label 字段的标签。
mask 要显示的当前掩码。
displayedOption 包含每个标志的标签的字符串数组。
style 可选 GUIStyle
displayedOptions 包含每个标志的标签的字符串数组。

返回

int 用户修改的值。

描述

创建一个适用于掩码的字段。

**注意:**与菜单中的每个选项相关联的标志的掩码值将为从 1 开始的连续 2 次幂(即 1、2、4、8、16,以此类推)。


显示掩码字段的简单窗口。

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); } }