Recentemente ho creato un ispettore personalizzato e ho appena realizzato che il mio OnValidate() non viene chiamato quando modifica una variabile in Inspector. Qualche idea su come richiamare nuovamente le mie chiamate su OnValidate() mantenendo il controllo personalizzato che ho usato?Unity - È possibile accedere a OnValidate() quando si utilizza un'ispettore personalizzato?
5
A
risposta
1
La risposta era in serializzazione e campo proprietà.
Esempio con il mio codice, la prima parte qui mostra solo che nel mio script principale ho dichiarato questo. Ricorda ora, le variabili pubbliche sono già serializzate quindi non c'è bisogno di metterle.
public class Original : MonoBehaviour {
// Used for the user to input their board section width and height.
[Tooltip("The desired Camera Width.")]
public float cameraWidth;
}
Ora nel mio ispettore personalizzato ho questo:
pubilc class Original_Editor : Editor{
public override void OnInspectorGUI(){
serializedObject.Update();
// Get the camera width.
SerializedProperty width = serializedObject.FindProperty("cameraWidth");
// Set the layout.
EditorGUILayout.PropertyField(width);
// Clamp the desired values
width.floatValue = Mathf.Clamp((int)width.floatValue, 0, 9999);
// apply
serializedObject.ApplyModifiedProperties();
}
}
Problemi correlati
- 1. Quando è OnValidate chiamato in Linq?
- 2. C#: Come accedere a una condivisione quando si utilizza DirectoryInfo
- 3. NoClassDefFoundError quando si utilizza Parse.com per accedere a Facebook
- 4. Configurare un MaxItemsInObjectGraph del client WCF quando si utilizza Unity
- 5. È possibile eseguire la manipolazione bytecode quando si utilizza OSGi?
- 6. Quando si utilizza Linq, DbNull è equivalente a Null?
- 7. È possibile impedire a MS Access di cambiare automaticamente la linguetta selezionata quando si utilizza un nastro personalizzato?
- 8. NumPy: array problema quando si utilizza l'assegnazione DTYPE personalizzato
- 9. Come scrivere codice personalizzato (logica) quando si utilizza firebase
- 10. È possibile arrotondare a 0,99999999999 a 1,0 quando si moltiplica?
- 11. È possibile accedere a ipython dal codice?
- 12. quando si utilizza knitr
- 13. Specificare il nome indice personalizzato quando si utilizza add_reference
- 14. Prevenire l'accesso automatico quando si utilizza l'accesso a Google+
- 15. Possibile SQL Injection quando si utilizza contiene con EF?
- 16. Se si utilizza la libreria aziendale, è meglio log4net accedere?
- 17. Possibile ritardo quando si utilizza NOW() in MySQL Query?
- 18. Quando si utilizza ANTLR
- 19. Quando si utilizza CFRelease?
- 20. Eccezione quando si utilizza TestRestTemplate
- 21. caricamento DLL ritardato possibile quando si utilizza QMake?
- 22. È possibile accedere a ulteriori informazioni sui metadati da un modello di visualizzazione o editor personalizzato?
- 23. Il tag è nullo quando si utilizza il legname
- 24. come accedere nome del metodo quando si utilizza classe wrapper con Log4net
- 25. Estensione di fabbrica dell'oggetto personalizzato per Unity
- 26. Alternative a Freemarker quando si utilizza Spring/Hibernate?
- 27. DirectoryServicesCOMException quando si utilizza System.DirectoryServices.AccountManagement
- 28. Perché il cinese è confuso quando si usa webpy ma è normale quando si utilizza MySQLdb?
- 29. Injecting Dipendenza SignInManager: non funziona con Unity, funziona quando si utilizza OWIN
- 30. Come accedere a DynamoDB da AWS Lambda quando si utilizza Serverless Framework?