[TIMOB-16258] Android: ListView shifts when loaded a second time or loaded into a window without a tab
GitHub Issue | n/a |
Type | Bug |
Priority | High |
Status | Closed |
Resolution | Fixed |
Resolution Date | 2014-12-02T19:07:50.000+0000 |
Affected Version/s | n/a |
Fix Version/s | Release 4.0.0 |
Components | Android |
Labels | ListViews, Runtime, exalture, parity |
Reporter | Mauro Parra-Miranda |
Assignee | Sunila |
Created | 2013-11-03T23:35:39.000+0000 |
Updated | 2015-02-12T21:43:06.000+0000 |
Description
I've trimmed down the files and code as much as I believe that I can and still maintain the layout / shifting issue. It is very simple compared to the original code.
1) Create a new alloy project or start with the two tab alloy project
2) delete all the .js, .xml and .tss files
3) Add the enclosed index.js, index.tss and index.xml files
4) Compile and run the project on a device or an emulator
5) Note that the text in the first list section is lined up with the text in the second list section. emulator64-armScreenSnapz002.png shows how it looks in my app. It will look different in this project because it has been trimmed down to contain static data with only two sections instead of three.
6) Hit the 'R' button on the top right hand side of the first line of the list view
7) Note that the name on the first line changes color from red to gray to let you know you clicked.
8) Note that all the text after the second column has shifted to the left. emulator64-armScreenSnapz003.png shows what it looks like in my app. The output from these files do not contain any graphics of course and text has been substituted.
Results:
The first 2 items on the left side of the list view don't move but the next 4 shift to the left.
Expected Results:
The text doesn't move.
This seems to work properly on all the iOS devices and emulators that I've tried, so I believe that this is an Android only issue somewhere between the Titanium runtime and the Android OS.
Attachments
This is still present in the 3.2.2.GA SDK. It still works properly on iOS and is broken on Android. Has any research been done on this? Have you been able to at least reproduce it.
The issue is reproducible with the test code provided above. Environment: Appc Studio : 3.3.0.201405271647 Ti SDK : 3.3.0.v20140603152512 Mac OSX : 10.8.5 Alloy : 1.4.0-beta CLI - 3.3.0-beta2 Code Processor: 1.1.1 Nexus 5 - android 4.4.2
Thank you for looking into this bug
Issue reproduces Titanium SDK version 3.4.0 master, 3.3.0.GA Titanium Studio, build: 3.3.0.201407100905 Titanium Command-Line Interface CLI version 3.3.0, Android device : Motorola Moto G, Android version : 4.4.4
Issue reproduces Titanium SDK version 3.4.0 master, 3.3.0.GA Titanium Studio, build: 3.3.0.201407100905 Titanium Command-Line Interface CLI version 3.3.0, Android device : Motorola Moto G, Android version : 4.4.4
https://github.com/appcelerator/titanium_mobile/pull/6377 Additional checking for old and new value being null
Verified fix on: Mac OSX 10.10.2 Appcelerator Studio, build: 4.0.0.201502051633 Titanium SDK build: 4.0.0.v20150212104820 Titanium CLI, build: 3.6.0-dev Alloy: 1.6.0-alpha Android Build tools 21.1.2 Nexus 6 (5.0.1), Galaxy S3 (4.4.2) Built to both devices, the ListView no longer shifts when loaded a second time. Closing ticket.