IOS: first answer doesn't work right after boot

I recently noticed that there is one specific bug / behavior in each of my applications: if the user types a UI component too quickly when the view appears, the faucet is simply ignored. If the user waits a little before pressing, the tap works.

Storyboard is used for storyboards, gesture recognizers click on UIImageview and using IOS 10.2.

I've read about the following parameters on various forums:

  • call socket "current view controllers" on the main thread
  • CFRunLoopWakeup call before the current pipeline
  • Add TapGesturerecognizer programmatically
  • change the states of "touch delay to end" and "touch slowdown started"
  • disable 3d touch option as similar symptoms have been reported to occur in other applications.

All of the above was unsuccessful. Would anyone run into similar issues with the first click right after loading the view?

[Update: I understand this misbehavior is not specific to this application. Two tests:

  • create an xCode project for iPhone and two view controllers. Controller A and Controller B. Two buttons: a button on the controller. View to go to Controller B's view and the Back button on Controller B's window to return to Controller View. Click to go from View A to B, click back to B and try pressing the button right away to go to B. The first answer also doesn't work.

  • Go to iPhone Settings. Click Alerts. Tap "On Settings" to return to the "Basic Settings" screen, Immediately tap "Alerts". If fast enough, the first rollback doesn't work. The second tap works or waits for a bit before the first tap.

Question now: this looks like a common problem in iPhone apps. Did you know there will be a general setting somewhere? or is this a common error for this version of IOS? ]

Stephen

+3


source to share


1 answer


This is a common problem (the moment the view controller is changed, the first response will be ignored), but this is not an error that will only occur because the view controller animation has not finished yet. If you set the animation to false, then the view controller can immediately respond to your click, no matter how fast (faster than your hand anyway) :)



+4


source







All Articles