Antwort auf: Problem mit mobile Scroller

Startseite Foren Deutsches LiveCode-Forum Problem mit mobile Scroller Antwort auf: Problem mit mobile Scroller

#8479
Klaus Major
Administrator

    Hm, Du hast einmal sScrollerID als Lokal und einmal als Global definiert, bitte entscheide Dich. 🙂

    Globale/Lokale Variablen deklariert man am Besten ÜBER allen Handlern im Skript, so kann auch jeder Handler darauf zugreifen:
    Stack2, card b1:

    local sScrollerID, tScrollerRect, tContentRect
    
    on preOpenCard
       local sScrollerID
       local tScrollerRect, tContentRect
       // Only create a scroller on a mobile device
       if environment() is not "mobile" then exit preOpenCard
       put the rect of group "scrollArea" into tScrollerRect
       put 0,0,(the formattedWidth of group "scrollArea"),(the formattedHeight of group "scrollArea") into tContentRect
       // Create the scroller control
       mobileControlCreate "scroller", "my_scroller1"
       put the result into ssScrollerID
       // Set the properties of the scroller
       mobileControlSet "my_scroller1", "rect", tScrollerRect
       mobileControlSet "my_scroller1", "contentRect", tContentRect
       mobileControlSet "my_scroller1", "visible", true
       mobileControlSet "my_scroller1", "scrollingEnabled", true
       mobileControlSet "my_scroller1", "vIndicator", true
       mobileControlSet "my_scroller1", "vscroll", 0   
    end preOpenCard
    
    on closeCard
       // Delete the scroller
       ## Ist aber LOKAL deklariert!
       ## global sScrollerID
       if environment() is not "mobile" then exit closeCard
       mobileControlDelete sScrollerID
    end closeCard

    Dito für: Stack3, card c1:

    Und Dein Stack2 hat kein Skript zu Scrollererstellung.

    Gruß

    Klaus