मैं एकता के इलाके उपकरण के समान एक उपकरण बनाना चाहता हूं, जिसमें निरीक्षक में कुछ अच्छे टॉगल बटन हैं:
मैं इसके समान डिजाइन कैसे प्राप्त कर सकता हूं? मुझे पता है कि इंस्पेक्टर में सामान्य बटन और अन्य UI घटक कैसे बनाए जाते हैं, लेकिन मुझे बटन टॉगल करने के लिए पर्याप्त जानकारी नहीं मिल सकती है।
अब तक मैंने सामान्य टॉगल का उपयोग किया है जो एक चेकबॉक्स का उत्पादन करता है:
var tmp = EditorGUILayout.Toggle( SetAmountFieldContent, _setValue );
if ( tmp != _setValue )
{
_setValue = tmp;
if ( _setValue )
_smoothValue = false;
}
tmp = EditorGUILayout.Toggle( SmoothValueFieldContent, _smoothValue );
if ( tmp != _smoothValue )
{
_smoothValue = tmp;
if ( _smoothValue )
_setValue = false;
}
टॉगल GUIStyle
को "बटन" पर सेट करने से वांछित परिणाम प्राप्त नहीं होता है। पाठ या छवि सामग्री अंदर के बजाय बटन के बाईं ओर जाती है।
var tmp = EditorGUILayout.Toggle( SetAmountFieldContent, _setValue, "Button" );
इसके अलावा GUISkin में पाए गए विकल्पों में से कोई भी मदद करने के लिए नहीं लगता है।
_smoothValue = !GUILayout.Button( SetAmountFieldContent, _smoothValue ? ToggleButtonStyleToggled : ToggleButtonStyleNormal)
दो बूलियन होने के बजाय सिर्फ क्यों इस्तेमाल नहीं करते ? मेरे लिए यह अच्छी तरह से काम करता है और कोड स्टैडनर्ड एकता बटन / टॉगल का उपयोग करने के करीब दिखता है