EditorDialog.DisplayDecisionDialogWithOptOut
Declaration
public static bool DisplayDecisionDialogWithOptOut(string titleText, string messageText, string yesButtonText, string noButtonText, DialogOptOutDecisionType optOutDecisionType, string optOutKey, DialogIconType iconType);Параметры
| Параметр | Описание |
|---|---|
| titleText | Название диалога. Если оставить null, по умолчанию будет "Unity". |
| messageText | Сообщение, отображаемое в диалоговом окне. |
| yesButtonText | Текст, который будет отображаться на кнопке Да. Если оставить нулевым, по умолчанию будет "Да". |
| noButtonText | Текст, который будет отображаться на кнопке Нет. Если оставить нулевым, по умолчанию будет отображаться "Нет". |
| optOutDecisionType | Где хранится результат, если пользователь выходит из диалога, что он может сделать, если включит Больше не спрашивать в диалоге. |
| optOutKey | Ключ, используемый для сохранения решения об отказе. |
| iconType | Значок для отображения в диалоговом окне. По умолчанию DialogIconType.Warning. |
Возвращаемое значение
логическое Возвращает true, если пользователь нажал кнопку "Да" или ранее отказался, false, если пользователь нажал кнопку "Нет".
Описание
Отображает диалоговое окно принятия решения с заголовком, значком, сообщением, двумя кнопками и флагом отказа.
Если messageText является нулевым или пробелом, а ArgumentNullException брошен. Если messageText длина сообщения превышает 512 символов, оно обрезается и полное сообщение регистрируется в консоли в формате markdown.
Если текст любой кнопки длиннее 64 символов, ArgumentException брошена.
Кнопка по умолчанию — кнопка "Да". Если пользователь нажимает клавишу ввода (клавишу возврата на macOS), нажимается кнопка Да. Другая кнопка — кнопка Нет. Если пользователь нажимает клавишу Эскапа или закрывает диалог, нажимается кнопка Нет. macOS, ориентация кнопок может быть горизонтальной или вертикальной в зависимости от длины сообщения.
Если optOutKey не является действительным XML тега, или более 127 символов длины, а ArgumentException следует позаботиться о том, чтобы ключ был уникальным для отображаемого диалогового окна, чтобы избежать конфликтов. API Заботится о сохранённом решении, так что вам не нужно проверять значение ключа перед отображением диалогового окна. Пользователи могут сбросить решение в Настройках Редактора. Решение сохраняется только в том случае, если пользователь отмечает флажок отказа и нажимает кнопку Да.
В следующем примере показано, как отобразить диалоговое окно принятия решения со значком предупреждения, заголовком, сообщением, кнопками «Да» и «Нет» и флагом отказа.
using UnityEditor; using UnityEngine;
namespace Examples { public class DisplayDecisionDialogWithOptOutExample : MonoBehaviour { [MenuItem("Window/EditorDialog Example/DisplayDecisionDialogWithOptOut")] public static void DisplayDecisionDialogExample() { bool userResponse = EditorDialog.DisplayDecisionDialogWithOptOut( "Unity - Example Decision Opt Out", @"This is a test of the EditorDialog API.
If you check the box and select 'Yes', you will not see this dialog again unless you reset it in the options.", null, null, DialogOptOutDecisionType.ForThisUser, "ExampleDecisionOptOut");
Debug.Log(userResponse); } } }
Выводит следующее диалоговое окно на macOS:
.