iOS simulator not responding

Terry Judd terry.judd at unimelb.edu.au
Tue Nov 26 18:23:57 EST 2019


Not sure if it will help, but here's the code I use to create a multiline text control (pControlName) on iOS that 'overlays' an existing LC field (pObj)

# create a native multiline text control
put the rect of pObj into tRect
# shrink the rect by 1 pixel all around to reveal the object's border
add 1 to item 1 of tRect
add 1 to item 2 of tRect
add -1 to item 3 of tRect
add -1 to item 4 of tRect
mobileControlCreate "multiline", pControlName
mobileControlSet pControlName, "rect", tRect
mobileControlSet pControlName, "opaque", true
mobileControlSet pControlName, "visible", true
mobileControlSet pControlName, "contentType", "plain"
mobileControlSet pControlName, "fontSize", "18"
mobileControlSet pControlName, "textAlign", "left"
mobileControlSet pControlName, "returnKeyType", "default"
mobileControlSet pControlName, "autoCorrectionType", "default"
mobileControlSet pControlName, "autoCapitalizationType", "sentences"
mobileControlSet pControlName, "keyboardStyle", "default"

You use 'editable' and 'enabled' as parameters for mobileControlSet but I don't use either of those. I use 'opaque' but you don't because you are after a transparent effect - I wonder whether 'opaque' can be used in conjunction with 'alpha' though?

Terry...


On 27/11/19, 6:46 am, "use-livecode on behalf of J. Landman Gay via use-livecode" <use-livecode-bounces at lists.runrev.com on behalf of use-livecode at lists.runrev.com> wrote:

    I have reduced the problem to iOS input fields. Some testing shows that:
    
    * The native fields exist
    * Their rect is correct
    * If I script their text data, it is there and can be retrieved
    
    But they are inactive, can't be tapped, don't show any text even if its 
    entry is scripted, can't be typed into, can't be focused. They act like 
    they are invisible.
    
    Here is what I do to create them. This is a generic handler that creates 
    all input fields throughout the app, and it works fine on Android. 
    Usually I call it like this: createInputFld "email". The other params 
    are used only occasionally.
    
    command createInputFld pName,pReturnKey,pMultiline -- native single-line 
    input
       -- pName = any valid fld identifier (long name, ID, etc)
       -- pReturnKey = return key type, usually "search"
       -- pMultiline = boolean, whether to create a multi-line input
       put (the rect of control pName) into tRect
       subtract 10 from item 2 of tRect -- adjust for mobile
       add 10 to item 4 of tRect -- may not need for iOS
       if pMultiLine = true then
         mobileControlCreate "multiline", pName
       else
         mobileControlCreate "input", pName
       end if
       mobileControlSet pName, "rect", tRect
       mobileControlSet pName, "autoCapitalizationType", "none"
       mobileControlSet pName, "autoCorrectionType", "no"
       mobileControlSet pName, "enabled", true
       mobileControlSet pName, "editable", true -- multiline only (?)
       mobileControlSet pName, "alpha", 0 -- transparent
       mobileControlSet pName, "textalign", the effective textalign of 
    control pName
       mobileControlSet pName, "textColor", the effective textcolor of 
    control pName
       if pReturnKey <> "" then mobileControlSet pName, "returnKeyType", 
    pReturnKey -- usually "search"
       mobileControlSet pName, "visible", true
       if the platform contains "iPhone" then
         mobileControlSet pName, "borderStyle", "none"
         mobileControlSet pName, "clearButtonMode", "always"
       end if
    end createInputFld
    
    The fields on the first card are plain input fields, but I have a 
    question about multiline fields. The docs are a bit confusing. I pass 
    the parameter to Android and it does what I want. But I'm not clear 
    whether that works on iOS. The docs say that multiline fields are 
    applicable to both platforms, but mobileControlCreate info says it is 
    Android only. There is also a separate iOS command to create a multiline 
    field. How does all this work?
    
    Multiline isn't applicable to the immediate issue, where I can't get 
    past the first two plain input fields.
    
    On 11/25/19 5:09 PM, J. Landman Gay via use-livecode wrote:
    > Thanks Panos. Resetting didn't work, so now I'm wondering if it is 
    > something about my LC native fields. The first thing the user needs to 
    > do is log in, and I can't test beyond that until I can enter 
    > credentials. There are two native fields, both are transparent. Would 
    > transparency in iOS matter? They work on Android.
    > 
    > I forgot to mention that the only OS available in XCode 10.1 is iOS 12.1 
    > but I assume that's okay.
    > 
    > On 11/25/19 4:11 PM, panagiotis merakos via use-livecode wrote:
    >> Hello Jacque,
    >>
    >> So the iOS standalone is installed to the iOS simulator, but the 
    >> simulator
    >> does not respond to clicks / keyboard entry?
    >>
    >> I am on Mojave as well, but have not seen that happening.
    >>
    >> Maybe it is worth resetting the simulator state:
    >> Quit any instances of Xcode and iOS simulator, and execute this in the
    >> terminal:
    >>
    >> sudo killall -9 com.apple.CoreSimulator.CoreSimulatorService
    >>
    >> Then:
    >> - Open the Simulator from Xcode (Launch Xcode 10.1, go to Xcode's menubar
    >> and choose
    >> Xcode -> Open Developer Tool -> Simulator)
    >> - Wait until the simulator fully loads, until it shows the device's Home
    >> screen
    >> If you change device by clicking on the Simulator's app menubar
    >> (Hardware -> Device -> iOS 12.1 -> <device_name> ) - again, wait until 
    >> the
    >> new simulator device fully loads, until it shows the device's Home screen
    >> - Now go back to LiveCode and test again
    >>
    >> Fingers crossed :)
    >>
    >> Panos
    >> -- 
    >>
    >> On Mon, 25 Nov 2019 at 21:43, J. Landman Gay via use-livecode <
    >> use-livecode at lists.runrev.com> wrote:
    >>
    >>> When I run a test on the iOS simulator, it will not respond to either
    >>> clicks/taps or keyboard entry. Basically, it's inert. I've tried several
    >>> different hardware devices, all with the same results.
    >>>
    >>> A Google search seems to show that this is a bug in the simulator when
    >>> running under Mojave, and works again if run in Catalina. I can't update
    >>> to Catalina yet because several apps I rely on will not run there.
    >>>
    >>> I'm using LC 9.5.1 (rc1), XCode 10.1, on Mojave. Has anyone seen this,
    >>> and if so, have a workaround?
    >>>
    >>> -- 
    >>> Jacqueline Landman Gay         |     jacque at hyperactivesw.com
    >>> HyperActive Software           |     http://www.hyperactivesw.com
    >>>
    >>> _______________________________________________
    >>> use-livecode mailing list
    >>> use-livecode at lists.runrev.com
    >>> Please visit this url to subscribe, unsubscribe and manage your
    >>> subscription preferences:
    >>> http://lists.runrev.com/mailman/listinfo/use-livecode
    >>>
    >> _______________________________________________
    >> use-livecode mailing list
    >> use-livecode at lists.runrev.com
    >> Please visit this url to subscribe, unsubscribe and manage your 
    >> subscription preferences:
    >> http://lists.runrev.com/mailman/listinfo/use-livecode
    >>
    > 
    > 
    
    
    -- 
    Jacqueline Landman Gay         |     jacque at hyperactivesw.com
    HyperActive Software           |     http://www.hyperactivesw.com
    
    
    _______________________________________________
    use-livecode mailing list
    use-livecode at lists.runrev.com
    Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
    http://lists.runrev.com/mailman/listinfo/use-livecode
    
    



More information about the use-livecode mailing list