Android Question CallSub

I'm having trouble calling the Initialize method of a B4A class passed as an object. I keep getting the "method not found" message.


Private Sub CreateInstance(TypeName As String, Params() As Object) As Object
Dim jo As JavaObject
Return jo.InitializeNewInstance(TypeName,Params).As(Object)
End Sub
....
Dim tp=GetType(baseOBJ)
Dim nuovoObj As Object = CreateInstance(tp,Null)
Log("GetType(oItem): " & GetType(nuovoObj))
If SubExists(nuovoObj, "Initialize") Then
CallSub(nuovoObj, "Initialize")
Else
Log("Metodo Initialize not found")
End If
 

Cableguy

Expert
Licensed User
Longtime User
without any code, I don't see how anyone can help.

But anyway, here's how it is usually done:

Dim myNewClassObject as ClassObject
myNewClassObject.initialize
 
Upvote 0
This is the class code.
I would like to use

Dim nuovaCassaO As tCassa
nuovaCassaO.Initialize
...
Dim baseOBJ as Object=nuovaCassaO

Dim tp=GetType(baseOBJ)
Dim nuovoObj As Object = CreateInstance(tp,Null)
CallSub(nuovoObj, "InitializeORM") <===== nothing happens here

'tCassa class
Sub Class_Globals
Public db_orm_fields() As String '= Array As String("idCassa", "Nome", "Int1","Int2","Int3","Logo")
Public db_orm_pks() As String '= Array As String("idCassa")
Public db_orm_tabname As String'="tCassa"
Public idCassa As Int
Public Nome As String
Public Int1 As String
Public Int2 As String
Public Int3 As String
Public Logo As String

End Sub
Public Sub InitializeORM()
db_orm_fields = Array As String("idCassa", "Nome", "Int1","Int2","Int3","Logo")
db_orm_pks= Array As String("idCassa")
db_orm_tabname ="tCassa"
End Sub
Public Sub Initialize()
InitializeORM
End Sub
 
Upvote 0
Top