Thanks Terry. I keep finding new things. It turns out my multiline fields are working, but the single input ones do not. Very strange.

Do you have single line inputs?

--
Jacqueline Landman Gay | jac...@hyperactivesw.com
HyperActive Software | http://www.hyperactivesw.com
On November 26, 2019 5:26:05 PM Terry Judd via use-livecode <use-livecode@lists.runrev.com> wrote:

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-boun...@lists.runrev.com on behalf of use-livecode@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@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         |     jac...@hyperactivesw.com
   >>> HyperActive Software           |     http://www.hyperactivesw.com
   >>>
   >>> _______________________________________________
   >>> use-livecode mailing list
   >>> use-livecode@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@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         |     jac...@hyperactivesw.com
   HyperActive Software           |     http://www.hyperactivesw.com


   _______________________________________________
   use-livecode mailing list
   use-livecode@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@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@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Reply via email to