Buon pomeriggio,
sto provando a fare cross-platform di un progetto B4XPages.
Tutto bene (ho già convertito, con pochissimi aggiustamenti, 4/5 pagine) fino a che non ho incontrato una TabStripViewPage che, a quanto ho capito, in B4I non esiste.
Basandomi sull'esempio di Erel per l'uso della libreria interna iTabStrip, ho scritto quanto segue:
Ovviamente ho richiamato la libreria, ho definito i Layout, ecc.
La pagina di Log non mi mostra nessun errore, ma quando vado a cliccare sul button che richiama la pagina contenente la TabStrip mi da il seguente errore (in pagina di log) e mi esce dal debug:
Application_Start
Call B4XPages.GetManager.LogEvents = True to enable logging B4XPages events.
Application_Active
Error occurred on line: 555 (Tonalita)
Could not load NIB in bundle: 'NSBundle </private/var/containers/Bundle/Application/AD42247E-C9DF-4AEE-8175-0CA4F513E21E/apMusica.app> (loaded)' with name 'ButtonCell'
Stack Trace: (
CoreFoundation 5A6C1F41-BF70-32F6-A1D6-5B894DD21362 + 968324
libobjc.A.dylib objc_exception_throw + 60
CoreFoundation 5A6C1F41-BF70-32F6-A1D6-5B894DD21362 + 1512596
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 3559488
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 1450072
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 1448912
apMusica -[XLButtonBarPagerTabStripViewController collectionView:cellForItemAtIndexPath:] + 88
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 860844
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 856748
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 855320
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 504880
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 501580
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 207876
QuartzCore 5C3EE3D9-1AAA-3052-A6C7-B957B454AD71 + 419820
QuartzCore 5C3EE3D9-1AAA-3052-A6C7-B957B454AD71 + 418676
QuartzCore 5C3EE3D9-1AAA-3052-A6C7-B957B454AD71 + 444512
QuartzCore 5C3EE3D9-1AAA-3052-A6C7-B957B454AD71 + 416640
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 14743980
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 1845764
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 2708228
CoreFoundation 5A6C1F41-BF70-32F6-A1D6-5B894DD21362 + 225452
CoreFoundation 5A6C1F41-BF70-32F6-A1D6-5B894DD21362 + 221992
CoreFoundation 5A6C1F41-BF70-32F6-A1D6-5B894DD21362 + 215772
CoreFoundation 5A6C1F41-BF70-32F6-A1D6-5B894DD21362 + 210968
CoreFoundation CFRunLoopRunSpecific + 608
GraphicsServices GSEventRunModal + 164
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 2279584
UIKitCore UIApplicationMain + 340
apMusica main + 100
dyld 28D6D2C1-46CE-3D58-B744-B06A6C573888 + 24012
)
SignalHandler 6
La linea 555 (Tonalita) è quella in cui viene richiamata la pagina che contiene la TabStrip
Non capisco dove sbaglio. Mi date una mano?
sto provando a fare cross-platform di un progetto B4XPages.
Tutto bene (ho già convertito, con pochissimi aggiustamenti, 4/5 pagine) fino a che non ho incontrato una TabStripViewPage che, a quanto ho capito, in B4I non esiste.
Basandomi sull'esempio di Erel per l'uso della libreria interna iTabStrip, ho scritto quanto segue:
B4X:
Private TabPages As List
Private tabAccordi As TabStrip
TabPages.Initialize
Dim page1, page2, page3 As Page
page1.Initialize("TRIADI")
page1.RootPanel.LoadLayout("TriadiLO")
page1.Title = "TRIADI"
TabPages.Add(page1)
page2.Initialize("TETRADI")
page2.RootPanel.LoadLayout("TetradiLO")
page2.Title = "TETRADI"
TabPages.Add(page2)
page3.Initialize("ESTESI")
page3.RootPanel.LoadLayout("EstesiLO")
page3.Title = "ESTESI"
TabPages.Add(page3)
tabAccordi.SetPages(TabPages)
La pagina di Log non mi mostra nessun errore, ma quando vado a cliccare sul button che richiama la pagina contenente la TabStrip mi da il seguente errore (in pagina di log) e mi esce dal debug:
Application_Start
Call B4XPages.GetManager.LogEvents = True to enable logging B4XPages events.
Application_Active
Error occurred on line: 555 (Tonalita)
Could not load NIB in bundle: 'NSBundle </private/var/containers/Bundle/Application/AD42247E-C9DF-4AEE-8175-0CA4F513E21E/apMusica.app> (loaded)' with name 'ButtonCell'
Stack Trace: (
CoreFoundation 5A6C1F41-BF70-32F6-A1D6-5B894DD21362 + 968324
libobjc.A.dylib objc_exception_throw + 60
CoreFoundation 5A6C1F41-BF70-32F6-A1D6-5B894DD21362 + 1512596
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 3559488
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 1450072
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 1448912
apMusica -[XLButtonBarPagerTabStripViewController collectionView:cellForItemAtIndexPath:] + 88
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 860844
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 856748
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 855320
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 504880
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 501580
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 207876
QuartzCore 5C3EE3D9-1AAA-3052-A6C7-B957B454AD71 + 419820
QuartzCore 5C3EE3D9-1AAA-3052-A6C7-B957B454AD71 + 418676
QuartzCore 5C3EE3D9-1AAA-3052-A6C7-B957B454AD71 + 444512
QuartzCore 5C3EE3D9-1AAA-3052-A6C7-B957B454AD71 + 416640
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 14743980
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 1845764
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 2708228
CoreFoundation 5A6C1F41-BF70-32F6-A1D6-5B894DD21362 + 225452
CoreFoundation 5A6C1F41-BF70-32F6-A1D6-5B894DD21362 + 221992
CoreFoundation 5A6C1F41-BF70-32F6-A1D6-5B894DD21362 + 215772
CoreFoundation 5A6C1F41-BF70-32F6-A1D6-5B894DD21362 + 210968
CoreFoundation CFRunLoopRunSpecific + 608
GraphicsServices GSEventRunModal + 164
UIKitCore 6398DDD4-EA36-31CD-B849-2F6217205BED + 2279584
UIKitCore UIApplicationMain + 340
apMusica main + 100
dyld 28D6D2C1-46CE-3D58-B744-B06A6C573888 + 24012
)
SignalHandler 6
La linea 555 (Tonalita) è quella in cui viene richiamata la pagina che contiene la TabStrip
Non capisco dove sbaglio. Mi date una mano?