With iOS 13.4, all css animations break after the keyboard has been used once - this is very critical!
See original GitHub issueBug Report
With iOS 13.4, all css animations break after the keyboard has been used once - this is very critical. ❗️ Especially if other frameworks like Sencha ( https://www.sencha.com/ )are used in combination with cordova, which work a lot with css animations. The apps will then no longer work. Important Note: with iOS 13.3.1 or lower everything is fine!
Steps to reproduce
- Install the newest X-Code Version 11.4 beta (11N111s) on your Mac with macOS 10.15.3 - this is the only way to use iOS 13.4
- Install the newest iOS 13.4 beta on an iOS 13.4 capable iPhone (iPhone 6S or newer) See: https://developer.apple.com/de/support/install-beta/
- Create a fresh and new Cordova App for iOS. You can use follow script:
#!use this two lines to install the lastest cordova version
#!sudo npm uninstall -g cordova
#!sudo npm install -g cordova
rm -r PhoneGap_ios
cordova create PhoneGap_ios de.test.test Test
cd PhoneGap_ios
cordova platform add ios --save
cordova plugin ls
- Open the X-Code Project and add follow line in the cordova index.html (project/Staging/www/index.html):
<div><input type='text'></div>
The complete changed index.html look like this:
<!DOCTYPE html>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<html>
<head>
<!--
Customize this policy to fit your own app's needs. For more guidance, see:
https://github.com/apache/cordova-plugin-whitelist/blob/master/README.md#content-security-policy
Some notes:
* gap: is required only on iOS (when using UIWebView) and is needed for JS->native communication
* https://ssl.gstatic.com is required only on Android and is needed for TalkBack to function properly
* Disables use of inline scripts in order to mitigate risk of XSS vulnerabilities. To change this:
* Enable inline JS: add 'unsafe-inline' to default-src
-->
<meta http-equiv="Content-Security-Policy" content="default-src 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *">
<meta name="format-detection" content="telephone=no">
<meta name="msapplication-tap-highlight" content="no">
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width">
<link rel="stylesheet" type="text/css" href="css/index.css">
<title>Hello World</title>
</head>
<body>
<div class="app">
<h1>Apache Cordova</h1>
<div id="deviceready" class="blink">
<p class="event listening">Connecting to Device</p>
<p class="event received">Device is Ready</p>
</div>
<div><input type='text'></div>
</div>
<script type="text/javascript" src="cordova.js"></script>
<script type="text/javascript" src="js/index.js"></script>
</body>
</html>
When I start the app on the iPhone (in this sample it is an iPhone X), the lettering Device is Ready flashes. This blinking is implemented with a css animation.
If the Input is clicked and the keyboard appears, the css animation stops working at this moment. Forever!
Even if the input loses focus again, the css animation does not work.
What is expected to happen?
The css animation work.
What does actually happen?
The css animation does not work.
Information
❗️The moment the input gets the focus, the following log message appears in the X-Code ❗️
2020-02-21 15:10:44.951209+0100 Test[542:49142] API error: <_UIKBCompatInputView: 0x101237310; frame = (0 0; 0 0); layer = <CALayer: 0x2809cea60>> returned 0 width, assuming UIViewNoIntrinsicMetric
2020-02-21 15:10:44.951354+0100 Test[542:49142] API error: <_UIKBCompatInputView: 0x101237310; frame = (0 0; 0 0); layer = <CALayer: 0x2809cea60>> returned 0 width, assuming UIViewNoIntrinsicMetric
2020-02-21 15:10:45.049831+0100 Test[542:49142] [LayoutConstraints] Unable to simultaneously satisfy constraints.
Probably at least one of the constraints in the following list is one you don't want.
Try this:
(1) look at each constraint and try to figure out which you don't expect;
(2) find the code that added the unwanted constraint or constraints and fix it.
(Note: If you're seeing NSAutoresizingMaskLayoutConstraints that you don't understand, refer to the documentation for the UIView property translatesAutoresizingMaskIntoConstraints)
(
"<NSAutoresizingMaskLayoutConstraint:0x282ae37f0 h=--& v=--& _UIToolbarContentView:0x103816d40.width == 0 (active)>",
"<NSLayoutConstraint:0x282ab3f70 H:|-(0)-[_UIButtonBarStackView:0x103818d40] (active, names: '|':_UIToolbarContentView:0x103816d40 )>",
"<NSLayoutConstraint:0x282a9a7b0 _UIButtonBarStackView:0x103818d40.trailing == _UIToolbarContentView:0x103816d40.trailing (active)>",
"<NSLayoutConstraint:0x282ae1680 'IB_Leading_Leading' H:|-(0)-[_UIModernBarButton:0x10117e870] (active, names: '|':_UIButtonBarButton:0x10117e160 )>",
"<NSLayoutConstraint:0x282ae1d60 'IB_Leading_Leading' H:|-(>=5)-[_UIModernBarButton:0x101180150] (active, names: '|':_UIButtonBarButton:0x10117ff70 )>",
"<NSLayoutConstraint:0x282ae16d0 'IB_Trailing_Trailing' H:[_UIModernBarButton:0x10117e870]-(>=8)-| (active, names: '|':_UIButtonBarButton:0x10117e160 )>",
"<NSLayoutConstraint:0x282ae1db0 'IB_Trailing_Trailing' H:[_UIModernBarButton:0x101180150]-(>=5)-| (active, names: '|':_UIButtonBarButton:0x10117ff70 )>",
"<NSLayoutConstraint:0x282ae2800 'TB_Leading_Leading' H:|-(8)-[_UIModernBarButton:0x101181b40'Done'] (active, names: '|':_UIButtonBarButton:0x101180c60 )>",
"<NSLayoutConstraint:0x282ae2850 'TB_Trailing_Trailing' H:[_UIModernBarButton:0x101181b40'Done']-(0)-| (active, names: '|':_UIButtonBarButton:0x101180c60 )>",
"<NSLayoutConstraint:0x282ae2c10 'UISV-canvas-connection' UILayoutGuide:0x2830a8540'UIViewLayoutMarginsGuide'.leading == _UIButtonBarButton:0x10117e160.leading (active)>",
"<NSLayoutConstraint:0x282ae2e90 'UISV-canvas-connection' UILayoutGuide:0x2830a8540'UIViewLayoutMarginsGuide'.trailing == _UIButtonBarButton:0x101180c60.trailing (active)>",
"<NSLayoutConstraint:0x282ae2ee0 'UISV-spacing' H:[_UIButtonBarButton:0x10117e160]-(0)-[UIView:0x10117fe00] (active)>",
"<NSLayoutConstraint:0x282ae2f30 'UISV-spacing' H:[UIView:0x10117fe00]-(0)-[_UIButtonBarButton:0x10117ff70] (active)>",
"<NSLayoutConstraint:0x282ae2f80 'UISV-spacing' H:[_UIButtonBarButton:0x10117ff70]-(0)-[UIView:0x101180af0] (active)>",
"<NSLayoutConstraint:0x282ae2fd0 'UISV-spacing' H:[UIView:0x101180af0]-(0)-[_UIButtonBarButton:0x101180c60] (active)>",
"<NSLayoutConstraint:0x282ab3de0 'UIView-leftMargin-guide-constraint' H:|-(0)-[UILayoutGuide:0x2830a8540'UIViewLayoutMarginsGuide'](LTR) (active, names: '|':_UIButtonBarStackView:0x103818d40 )>",
"<NSLayoutConstraint:0x282ab3e80 'UIView-rightMargin-guide-constraint' H:[UILayoutGuide:0x2830a8540'UIViewLayoutMarginsGuide']-(0)-|(LTR) (active, names: '|':_UIButtonBarStackView:0x103818d40 )>"
)
Will attempt to recover by breaking constraint
<NSLayoutConstraint:0x282ae16d0 'IB_Trailing_Trailing' H:[_UIModernBarButton:0x10117e870]-(>=8)-| (active, names: '|':_UIButtonBarButton:0x10117e160 )>
Make a symbolic breakpoint at UIViewAlertForUnsatisfiableConstraints to catch this in the debugger.
The methods in the UIConstraintBasedLayoutDebugging category on UIView listed in <UIKitCore/UIView.h> may also be helpful.
2020-02-21 15:10:45.051131+0100 Test[542:49142] [LayoutConstraints] Unable to simultaneously satisfy constraints.
Probably at least one of the constraints in the following list is one you don't want.
Try this:
(1) look at each constraint and try to figure out which you don't expect;
(2) find the code that added the unwanted constraint or constraints and fix it.
(Note: If you're seeing NSAutoresizingMaskLayoutConstraints that you don't understand, refer to the documentation for the UIView property translatesAutoresizingMaskIntoConstraints)
(
"<NSAutoresizingMaskLayoutConstraint:0x282ae37f0 h=--& v=--& _UIToolbarContentView:0x103816d40.width == 0 (active)>",
"<NSLayoutConstraint:0x282ab3f70 H:|-(0)-[_UIButtonBarStackView:0x103818d40] (active, names: '|':_UIToolbarContentView:0x103816d40 )>",
"<NSLayoutConstraint:0x282a9a7b0 _UIButtonBarStackView:0x103818d40.trailing == _UIToolbarContentView:0x103816d40.trailing (active)>",
"<NSLayoutConstraint:0x282ae1d60 'IB_Leading_Leading' H:|-(>=5)-[_UIModernBarButton:0x101180150] (active, names: '|':_UIButtonBarButton:0x10117ff70 )>",
"<NSLayoutConstraint:0x282ae1db0 'IB_Trailing_Trailing' H:[_UIModernBarButton:0x101180150]-(>=5)-| (active, names: '|':_UIButtonBarButton:0x10117ff70 )>",
"<NSLayoutConstraint:0x282ae2800 'TB_Leading_Leading' H:|-(8)-[_UIModernBarButton:0x101181b40'Done'] (active, names: '|':_UIButtonBarButton:0x101180c60 )>",
"<NSLayoutConstraint:0x282ae2850 'TB_Trailing_Trailing' H:[_UIModernBarButton:0x101181b40'Done']-(0)-| (active, names: '|':_UIButtonBarButton:0x101180c60 )>",
"<NSLayoutConstraint:0x282ae2c10 'UISV-canvas-connection' UILayoutGuide:0x2830a8540'UIViewLayoutMarginsGuide'.leading == _UIButtonBarButton:0x10117e160.leading (active)>",
"<NSLayoutConstraint:0x282ae2e90 'UISV-canvas-connection' UILayoutGuide:0x2830a8540'UIViewLayoutMarginsGuide'.trailing == _UIButtonBarButton:0x101180c60.trailing (active)>",
"<NSLayoutConstraint:0x282ae2ee0 'UISV-spacing' H:[_UIButtonBarButton:0x10117e160]-(0)-[UIView:0x10117fe00] (active)>",
"<NSLayoutConstraint:0x282ae2f30 'UISV-spacing' H:[UIView:0x10117fe00]-(0)-[_UIButtonBarButton:0x10117ff70] (active)>",
"<NSLayoutConstraint:0x282ae2f80 'UISV-spacing' H:[_UIButtonBarButton:0x10117ff70]-(0)-[UIView:0x101180af0] (active)>",
"<NSLayoutConstraint:0x282ae2fd0 'UISV-spacing' H:[UIView:0x101180af0]-(0)-[_UIButtonBarButton:0x101180c60] (active)>",
"<NSLayoutConstraint:0x282ab3de0 'UIView-leftMargin-guide-constraint' H:|-(0)-[UILayoutGuide:0x2830a8540'UIViewLayoutMarginsGuide'](LTR) (active, names: '|':_UIButtonBarStackView:0x103818d40 )>",
"<NSLayoutConstraint:0x282ab3e80 'UIView-rightMargin-guide-constraint' H:[UILayoutGuide:0x2830a8540'UIViewLayoutMarginsGuide']-(0)-|(LTR) (active, names: '|':_UIButtonBarStackView:0x103818d40 )>"
)
Will attempt to recover by breaking constraint
<NSLayoutConstraint:0x282ae1db0 'IB_Trailing_Trailing' H:[_UIModernBarButton:0x101180150]-(>=5)-| (active, names: '|':_UIButtonBarButton:0x10117ff70 )>
Make a symbolic breakpoint at UIViewAlertForUnsatisfiableConstraints to catch this in the debugger.
The methods in the UIConstraintBasedLayoutDebugging category on UIView listed in <UIKitCore/UIView.h> may also be helpful.
2020-02-21 15:10:45.051943+0100 Test[542:49142] [LayoutConstraints] Unable to simultaneously satisfy constraints.
Probably at least one of the constraints in the following list is one you don't want.
Try this:
(1) look at each constraint and try to figure out which you don't expect;
(2) find the code that added the unwanted constraint or constraints and fix it.
(Note: If you're seeing NSAutoresizingMaskLayoutConstraints that you don't understand, refer to the documentation for the UIView property translatesAutoresizingMaskIntoConstraints)
(
"<NSAutoresizingMaskLayoutConstraint:0x282ae37f0 h=--& v=--& _UIToolbarContentView:0x103816d40.width == 0 (active)>",
"<NSLayoutConstraint:0x282ab3f70 H:|-(0)-[_UIButtonBarStackView:0x103818d40] (active, names: '|':_UIToolbarContentView:0x103816d40 )>",
"<NSLayoutConstraint:0x282a9a7b0 _UIButtonBarStackView:0x103818d40.trailing == _UIToolbarContentView:0x103816d40.trailing (active)>",
"<NSLayoutConstraint:0x282ae2800 'TB_Leading_Leading' H:|-(8)-[_UIModernBarButton:0x101181b40'Done'] (active, names: '|':_UIButtonBarButton:0x101180c60 )>",
"<NSLayoutConstraint:0x282ae2850 'TB_Trailing_Trailing' H:[_UIModernBarButton:0x101181b40'Done']-(0)-| (active, names: '|':_UIButtonBarButton:0x101180c60 )>",
"<NSLayoutConstraint:0x282ae2c10 'UISV-canvas-connection' UILayoutGuide:0x2830a8540'UIViewLayoutMarginsGuide'.leading == _UIButtonBarButton:0x10117e160.leading (active)>",
"<NSLayoutConstraint:0x282ae2e90 'UISV-canvas-connection' UILayoutGuide:0x2830a8540'UIViewLayoutMarginsGuide'.trailing == _UIButtonBarButton:0x101180c60.trailing (active)>",
"<NSLayoutConstraint:0x282ae2ee0 'UISV-spacing' H:[_UIButtonBarButton:0x10117e160]-(0)-[UIView:0x10117fe00] (active)>",
"<NSLayoutConstraint:0x282ae2f30 'UISV-spacing' H:[UIView:0x10117fe00]-(0)-[_UIButtonBarButton:0x10117ff70] (active)>",
"<NSLayoutConstraint:0x282ae2f80 'UISV-spacing' H:[_UIButtonBarButton:0x10117ff70]-(0)-[UIView:0x101180af0] (active)>",
"<NSLayoutConstraint:0x282ae2fd0 'UISV-spacing' H:[UIView:0x101180af0]-(0)-[_UIButtonBarButton:0x101180c60] (active)>",
"<NSLayoutConstraint:0x282ab3de0 'UIView-leftMargin-guide-constraint' H:|-(0)-[UILayoutGuide:0x2830a8540'UIViewLayoutMarginsGuide'](LTR) (active, names: '|':_UIButtonBarStackView:0x103818d40 )>",
"<NSLayoutConstraint:0x282ab3e80 'UIView-rightMargin-guide-constraint' H:[UILayoutGuide:0x2830a8540'UIViewLayoutMarginsGuide']-(0)-|(LTR) (active, names: '|':_UIButtonBarStackView:0x103818d40 )>"
)
Will attempt to recover by breaking constraint
<NSLayoutConstraint:0x282ae2850 'TB_Trailing_Trailing' H:[_UIModernBarButton:0x101181b40'Done']-(0)-| (active, names: '|':_UIButtonBarButton:0x101180c60 )>
Make a symbolic breakpoint at UIViewAlertForUnsatisfiableConstraints to catch this in the debugger.
The methods in the UIConstraintBasedLayoutDebugging category on UIView listed in <UIKitCore/UIView.h> may also be helpful.
2020-02-21 15:10:45.053048+0100 Test[542:49142] [LayoutConstraints] Unable to simultaneously satisfy constraints.
Probably at least one of the constraints in the following list is one you don't want.
Try this:
(1) look at each constraint and try to figure out which you don't expect;
(2) find the code that added the unwanted constraint or constraints and fix it.
(Note: If you're seeing NSAutoresizingMaskLayoutConstraints that you don't understand, refer to the documentation for the UIView property translatesAutoresizingMaskIntoConstraints)
(
"<NSAutoresizingMaskLayoutConstraint:0x282ae3890 h=--& v=--& _UIToolbarContentView:0x103816d40.height == 0 (active)>",
"<NSLayoutConstraint:0x282a9a800 V:|-(0)-[_UIButtonBarStackView:0x103818d40] (active, names: '|':_UIToolbarContentView:0x103816d40 )>",
"<NSLayoutConstraint:0x282a9a850 _UIButtonBarStackView:0x103818d40.bottom == _UIToolbarContentView:0x103816d40.bottom (active)>",
"<NSLayoutConstraint:0x282afce60 UIImageView:0x10117fc30.centerY == _UIModernBarButton:0x10117e870.centerY (active)>",
"<NSLayoutConstraint:0x282ae1950 'IB_Baseline_Baseline' _UIModernBarButton:0x10117e870.lastBaseline == UILayoutGuide:0x2830ad6c0'UIViewLayoutMarginsGuide'.bottom (active)>",
"<NSLayoutConstraint:0x282ae19a0 'IB_Top_Top' V:|-(>=0)-[_UIModernBarButton:0x10117e870] (active, names: '|':_UIButtonBarButton:0x10117e160 )>",
"<NSLayoutConstraint:0x282ae1c20 'UIButtonBar.maximumAlignmentSize' _UIButtonBarButton:0x10117e160.height == UILayoutGuide:0x2830a8540'UIViewLayoutMarginsGuide'.height (active)>",
"<NSLayoutConstraint:0x282ab3e30 'UIView-bottomMargin-guide-constraint' V:[UILayoutGuide:0x2830a8540'UIViewLayoutMarginsGuide']-(0)-| (active, names: '|':_UIButtonBarStackView:0x103818d40 )>",
"<NSLayoutConstraint:0x282ae18b0 'UIView-bottomMargin-guide-constraint' V:[UILayoutGuide:0x2830ad6c0'UIViewLayoutMarginsGuide']-(11)-| (active, names: '|':_UIButtonBarButton:0x10117e160 )>",
"<NSLayoutConstraint:0x282ab3d90 'UIView-topMargin-guide-constraint' V:|-(0)-[UILayoutGuide:0x2830a8540'UIViewLayoutMarginsGuide'] (active, names: '|':_UIButtonBarStackView:0x103818d40 )>"
)
Will attempt to recover by breaking constraint
<NSLayoutConstraint:0x282afce60 UIImageView:0x10117fc30.centerY == _UIModernBarButton:0x10117e870.centerY (active)>
Make a symbolic breakpoint at UIViewAlertForUnsatisfiableConstraints to catch this in the debugger.
The methods in the UIConstraintBasedLayoutDebugging category on UIView listed in <UIKitCore/UIView.h> may also be helpful.
2020-02-21 15:10:45.054025+0100 Test[542:49142] [LayoutConstraints] Unable to simultaneously satisfy constraints.
Probably at least one of the constraints in the following list is one you don't want.
Try this:
(1) look at each constraint and try to figure out which you don't expect;
(2) find the code that added the unwanted constraint or constraints and fix it.
(Note: If you're seeing NSAutoresizingMaskLayoutConstraints that you don't understand, refer to the documentation for the UIView property translatesAutoresizingMaskIntoConstraints)
(
"<NSAutoresizingMaskLayoutConstraint:0x282ae3890 h=--& v=--& _UIToolbarContentView:0x103816d40.height == 0 (active)>",
"<NSLayoutConstraint:0x282a9a800 V:|-(0)-[_UIButtonBarStackView:0x103818d40] (active, names: '|':_UIToolbarContentView:0x103816d40 )>",
"<NSLayoutConstraint:0x282a9a850 _UIButtonBarStackView:0x103818d40.bottom == _UIToolbarContentView:0x103816d40.bottom (active)>",
"<NSLayoutConstraint:0x282ae8f00 UIImageView:0x101180920.centerY == _UIModernBarButton:0x101180150.centerY (active)>",
"<NSLayoutConstraint:0x282ae2030 'IB_Baseline_Baseline' _UIModernBarButton:0x101180150.lastBaseline == UILayoutGuide:0x2830ad7a0'UIViewLayoutMarginsGuide'.bottom (active)>",
"<NSLayoutConstraint:0x282ae2080 'IB_Top_Top' V:|-(>=0)-[_UIModernBarButton:0x101180150] (active, names: '|':_UIButtonBarButton:0x10117ff70 )>",
"<NSLayoutConstraint:0x282ae2300 'UIButtonBar.maximumAlignmentSize' _UIButtonBarButton:0x10117ff70.height == UILayoutGuide:0x2830a8540'UIViewLayoutMarginsGuide'.height (active)>",
"<NSLayoutConstraint:0x282ab3e30 'UIView-bottomMargin-guide-constraint' V:[UILayoutGuide:0x2830a8540'UIViewLayoutMarginsGuide']-(0)-| (active, names: '|':_UIButtonBarStackView:0x103818d40 )>",
"<NSLayoutConstraint:0x282ae1f90 'UIView-bottomMargin-guide-constraint' V:[UILayoutGuide:0x2830ad7a0'UIViewLayoutMarginsGuide']-(11)-| (active, names: '|':_UIButtonBarButton:0x10117ff70 )>",
"<NSLayoutConstraint:0x282ab3d90 'UIView-topMargin-guide-constraint' V:|-(0)-[UILayoutGuide:0x2830a8540'UIViewLayoutMarginsGuide'] (active, names: '|':_UIButtonBarStackView:0x103818d40 )>"
)
Will attempt to recover by breaking constraint
<NSLayoutConstraint:0x282ae8f00 UIImageView:0x101180920.centerY == _UIModernBarButton:0x101180150.centerY (active)>
Make a symbolic breakpoint at UIViewAlertForUnsatisfiableConstraints to catch this in the debugger.
The methods in the UIConstraintBasedLayoutDebugging category on UIView listed in <UIKitCore/UIView.h> may also be helpful.
2020-02-21 15:10:45.054968+0100 Test[542:49142] [LayoutConstraints] Unable to simultaneously satisfy constraints.
Probably at least one of the constraints in the following list is one you don't want.
Try this:
(1) look at each constraint and try to figure out which you don't expect;
(2) find the code that added the unwanted constraint or constraints and fix it.
(Note: If you're seeing NSAutoresizingMaskLayoutConstraints that you don't understand, refer to the documentation for the UIView property translatesAutoresizingMaskIntoConstraints)
(
"<NSAutoresizingMaskLayoutConstraint:0x282ae3890 h=--& v=--& _UIToolbarContentView:0x103816d40.height == 0 (active)>",
"<NSLayoutConstraint:0x282a9a800 V:|-(0)-[_UIButtonBarStackView:0x103818d40] (active, names: '|':_UIToolbarContentView:0x103816d40 )>",
"<NSLayoutConstraint:0x282a9a850 _UIButtonBarStackView:0x103818d40.bottom == _UIToolbarContentView:0x103816d40.bottom (active)>",
"<NSLayoutConstraint:0x282ae95e0 UIButtonLabel:0x101184000'Done'.centerY == _UIModernBarButton:0x101181b40'Done'.centerY + 1.5 (active)>",
"<NSLayoutConstraint:0x282ae29e0 'TB_Baseline_Baseline' _UIModernBarButton:0x101181b40'Done'.lastBaseline == UILayoutGuide:0x2830ada40'UIViewLayoutMarginsGuide'.bottom (active)>",
"<NSLayoutConstraint:0x282ae2a30 'TB_Top_Top' V:|-(>=0)-[_UIModernBarButton:0x101181b40'Done'] (active, names: '|':_UIButtonBarButton:0x101180c60 )>",
"<NSLayoutConstraint:0x282ae2b70 'UIButtonBar.maximumAlignmentSize' _UIButtonBarButton:0x101180c60.height == UILayoutGuide:0x2830a8540'UIViewLayoutMarginsGuide'.height (active)>",
"<NSLayoutConstraint:0x282ab3e30 'UIView-bottomMargin-guide-constraint' V:[UILayoutGuide:0x2830a8540'UIViewLayoutMarginsGuide']-(0)-| (active, names: '|':_UIButtonBarStackView:0x103818d40 )>",
"<NSLayoutConstraint:0x282ae2940 'UIView-bottomMargin-guide-constraint' V:[UILayoutGuide:0x2830ada40'UIViewLayoutMarginsGuide']-(11)-| (active, names: '|':_UIButtonBarButton:0x101180c60 )>",
"<NSLayoutConstraint:0x282ab3d90 'UIView-topMargin-guide-constraint' V:|-(0)-[UILayoutGuide:0x2830a8540'UIViewLayoutMarginsGuide'] (active, names: '|':_UIButtonBarStackView:0x103818d40 )>"
)
Will attempt to recover by breaking constraint
<NSLayoutConstraint:0x282ae95e0 UIButtonLabel:0x101184000'Done'.centerY == _UIModernBarButton:0x101181b40'Done'.centerY + 1.5 (active)>
Make a symbolic breakpoint at UIViewAlertForUnsatisfiableConstraints to catch this in the debugger.
The methods in the UIConstraintBasedLayoutDebugging category on UIView listed in <UIKitCore/UIView.h> may also be helpful.
Command or Code
see above
Environment, Platform, Device
- iMac17,1 with macOS 10.15.3 (19D76)
- X-Code Version 11.4 beta (11N111s) with the related SDK
- iPhone X with iOS 13.4 (also tested with other iPhone with iOS 13.4)
- Latest Cordova Version (‘5.1.1’ in cordova.js)
Version information
see above
Checklist
- I searched for existing GitHub issues
- I updated all Cordova tooling to most recent version
- I included all the necessary information above
Issue Analytics
- State:
- Created 4 years ago
- Comments:5 (3 by maintainers)
Top GitHub Comments
FYI - This issue appears resolved in 13.4 public beta 3
I just tested this in a WKWebView app in the iOS 13.4 simulator, and the animation seems to keep working. UIWebView is deprecated, so it’s unlikely this will be considered high priority by Apple.
In any case, this is not an issue that Cordova can do anything about.