Search Issue Tracker
By Design
Votes
0
Found in
2019.3.0a7
2019.3.10f1
2020.1
2020.2
Issue ID
1239357
Regression
No
ListView renders one-too-many items when bound to a SerializedProperty
How to reproduce:
1. Open user-submitted project (ListViewBug.zip)
2. Select the TestAsset.asset in the Project window
3. See the ListView in the Inspector
Expected result: only 3 elements are bound
Actual result: 3 elements + 1 additional element beyond the size of the array are bound
Reproducible with: 2019.3.0a7, 2019.3.13f1, 2020.1.0b8, 2020.2.0a11
Could not test with: 2017.4.40f1, 2018.4.22f1, 2019.3.0a6 (incompatibility issues)
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Prefab that contains a layout group is marked as changed by the Editor when opened
- Emission animation does not appear when the "Emission Map" parameter is set to black in a Lit material
- Particles are rendered behind other GameObjects in the Scene view when the projection is Isometric
- Addressable asset download size remains non-zero when cached in WebGL Player
- The Camera type is registered as Game type when it is actually a Preview Camera
Resolution Note:
This behaviour is expected currently because of the way SerializedProperty works with regards to Arrays/List.
When enumerating properties of an array the first one is always the collection size (by default if you do not specify a custom make item it shows an integer field to edit array size).
That being said since 2020.1 we now provide a way "showBoundCollectionSize" property on ListView to skip this first element. Set it false will give you would expect.