I don't understand the precise between the IsInitialized function and testing for <> Null.
If I try to strictly use IsInitialized and have a pattern of calling Initialize to what I mentally equate to creating a new object and invoking a constructor. And at the end of life to set the variable to Null. When I then do a subsequent IsInitialized it gives a null pointer exception.
Calling Initialize on an object, and testing IsInitialized seem contrary to my experiences in other languages because "New" has not been invoked. Based on observation, apparently B4A objects are implicitly created but are "not initialized"?? Once Initialize is called I don't know how to revert the object to its previous state, so that I can again call IsInitialized without the null pointer error.
If I try to strictly use IsInitialized and have a pattern of calling Initialize to what I mentally equate to creating a new object and invoking a constructor. And at the end of life to set the variable to Null. When I then do a subsequent IsInitialized it gives a null pointer exception.
Calling Initialize on an object, and testing IsInitialized seem contrary to my experiences in other languages because "New" has not been invoked. Based on observation, apparently B4A objects are implicitly created but are "not initialized"?? Once Initialize is called I don't know how to revert the object to its previous state, so that I can again call IsInitialized without the null pointer error.