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" <[email protected] on behalf of [email protected]> 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 < >> [email protected]> 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 | [email protected] >>> HyperActive Software | http://www.hyperactivesw.com >>> >>> _______________________________________________ >>> use-livecode mailing list >>> [email protected] >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >>> >> _______________________________________________ >> use-livecode mailing list >> [email protected] >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > -- Jacqueline Landman Gay | [email protected] HyperActive Software | http://www.hyperactivesw.com _______________________________________________ use-livecode mailing list [email protected] Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode _______________________________________________ use-livecode mailing list [email protected] Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode
