B4J Question Scrolling modal sheet does not display correctly on Android phone.

Rob White

Member
Licensed User
Hi All,
MY previous post showed a table with floating buttons these buttons lead to a modal form with a table on which allows users to pick a chemical from the table.
Here is the complete code form the modal sheet:-
B4X:
' Triggered by the Select icon on the SprayDataPage

Sub Process_Globals
    Private ABM As ABMaterial
    Private Page As ABMPage
    Dim ChemTbl As ABMTable
    Dim ChemTypeCbo As ABMCombo
End Sub

Sub BuildmsSelectChem(pg As ABMPage) As ABMModalSheet
    Page = pg
    Dim MS As ABMModalSheet
    pg.ShowGridInfo=False
    MS.Initialize(pg,"msSelChem",True,ABM.MODALSHEET_SIZE_NORMAL,"mytheme")
    MS.Content.AddRows(1,True,"").AddCellsOS(1,0,0,0,8,8,8,"").AddCellsOS(1,0,0,0,4,4,4,"")
    MS.Content.AddRows(1,True,"").AddCells12(1,"")
    MS.Content.UseTheme("modalcontent")
    
    MS.Footer.AddRows(1,True,"").AddCellsOS(3,0,0,0,5,5,5,"").AddCellsOS(1,1,1,1,3,3,3,"")
    MS.Footer.BuildGrid
    MS.Footer.SetFixedHeight("10px")
    MS.Footer.UseTheme("modalfooter")
    
    MS.Size = ABM.MODALSHEET_SIZE_FULL
    MS.IsDismissible = True
    MS.MaxWidth = "80%"   
    MS.MaxHeight = "800px"
    MS.Content.BuildGrid
    MS.IsDismissible = True
    
    Dim Title As ABMLabel
    Title.Initialize(pg,"Title",Act.AbrevName & " - Select chemical",ABM.SIZE_H6,False,"mytheme")
    MS.Content.Cell(1,1).AddComponent(Title)

    ChemTypeCbo.Initialize(Page,"chemtypecbo","Type of chemical",300,"mytheme")
    Act.Chemtypes.FillCombo(pg,ChemTypeCbo,"ID")
    ChemTypeCbo.SetActiveItemId("0")
    
    MS.content.Cell(1,2).AddComponent(ChemTypeCbo)

    ChemTbl.Initialize(pg,"chemlist",True,False,True,"mytheme")
    ChemTbl.IsResponsive=True
    
    FillTable
    MS.Content.Cell(2,1).AddComponent(ChemTbl)

    Dim Gbut As ABMLabel
    Gbut.Initialize(pg,"Flab","Double tap/click to select.",ABM.SIZE_H6,False,"mytheme")
    MS.Footer.Cell(1,1).AddComponent(Gbut)
    Return MS
End Sub

public Sub FillTable
    ChemTbl.Clear
    Dim mp As Map
    Dim lab(Act.ChemList.Size) As ABMLabel
    
    For i = 0 To Act.ChemList.Size-1
        Dim L As List
        L.Initialize
        mp = Act.chemlist.SelectedData.Get(i)
        lab(i).Initialize(Page,"lab"&i,mp.Get("Name"),ABM.SIZE_H6,False,"mytheme")
        lab(i).Clickable=True
        lab(i).VerticalAlign=True
        L.Add(lab(i))
        ChemTbl.AddRowFixedHeight("R"&i,L,10)        ' NOT SURE what size units are !!!$@#
    Next
    
    ChemTbl.Refresh
End Sub

The table displays fine on my development PC but not on my Samsung A51 phone
Here are images of both:-

PCscreen.png


PhoneLandscape.png


Looks like the options are displayed three wide and the whole sheet will not scroll.
Anyone any idea what is wrong?PCscreen.pngPhoneLandscape.png
 
Top