New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[6_2_X][TIMOB-25173] Android: Modified layouts to behave more like iOS. #9321
Conversation
- Changed Android to resolve Size/Fill layout conflicts like iOS and Windows. * Note: Only an issue if parent uses Ti.UI.SIZE and child uses Ti.UI.FILL. * Android used to shrink the parent to fit the min size allowed by the child. * Now increases the size of the child to fill the parent's parent, like iOS/Windows. - Fixed horizontal layouts where views using FILL width would wrongly wrapped to next row. * Only an issue if another view is already in the row. (Resulting FILL width was too big.) - Fixed layouts to prioritize size defined by view's top/left/bottom/right/center properties over FILL and SIZE. * Only applies if at least 2 coordinate properties were provided. * Now matches iOS' behavior. - Constrained child view width to parent's max width like iOS when using wrapping horizontal views. - This commit also resolves the following layout issues: * TIMOB-12996 * TIMOB-15097 * TIMOB-17628 * TIMOB-17984 * TIMOB-19536 * TIMOB-19598 * TIMOB-19814
…t/right/top/bottom/center properties to work like iOS. - Now supports setting view width/height based on position properties relative to parent's remaining space. - Also fixed horizontal wrapping regression introduced in last commit. * Views using Ti.UI.SIZE were wrongly using row's remaing space instead of view's desired width.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
CR: PASS
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Node Version: 6.10.3
NPM Version: 3.10.10
Mac OS: 10.12.4
Appc CLI: 6.2.3
Appc CLI NPM: 4.2.9
Titanium SDK version: 6.2.0 on PR/9321
Appcelerator Studio, build: 4.9.1.201707200100
Xcode 8.3.2
I tested this with the test cases specified in PR 9320 (master version for this ticket). I tested with three devices, Pixel (7.0), Nexus 6 (6.0.1), and GS4 (4.4.4) FR passed for all devices and test cases.
JIRA: https://jira.appcelerator.org/browse/TIMOB-25173
Cherry Pick of: #9320