版本: Unity 6 (6000.0)
语言English
  • C#

EditorGUI.MaskField

建议修改

成功!

感谢您帮助我们改进 Unity 文档的质量。虽然我们无法接受所有提交的内容,但我们确实会阅读用户提出的每个建议,并在适用的情况下进行更新。

关闭

提交失败

由于某些原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们改进 Unity 文档的质量。

关闭

取消

声明

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 用户修改的值。

描述

创建掩码字段。

注意:与菜单中每个选项关联的标志的掩码值将是连续的 2 的幂,从 1 开始,即 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); } }