Bug 57542 - Long loading issue while adding UIView insiden UIStackView
Summary: Long loading issue while adding UIView insiden UIStackView
Alias: None
Product: iOS
Classification: Xamarin
Component: Xamarin.iOS.dll ()
Version: XI 10.0 (iOS10)
Hardware: PC Windows
: --- normal
Target Milestone: Untriaged
Assignee: Bugzilla
Depends on:
Reported: 2017-06-16 05:22 UTC by Balasubramanian
Modified: 2017-06-26 16:41 UTC (History)
2 users (show)

Tags: xamarin.iOS
Is this bug a regression?: No
Last known good build:

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.

Please create a new report on Developer Community or GitHub with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.

Related Links:

Description Balasubramanian 2017-06-16 05:22:49 UTC
Hi Team,

We are trying to add 1000 UIViews inside the UIStackView using AddArrangedSubviews and it takes around longer time for layouting and displaying all the views in Xamarin.iOS. If this is an known issue can you please consider this issue as high priority and resolve it ASAP.

Also can you please suggest how to add large number of UIViews inside the UIStackView without affecting the performance?
Comment 1 Vincent Dondain [MSFT] 2017-06-16 18:59:58 UTC

Please include your full build logs, crash reports (if any), test case (to reproduce) and all version information.

To get full build logs just set the log verbosity to diagnostic at the following locations:
- On Visual Studio for Mac: Preferences > Projects > Build
- On Visual Studio for Windows: Tools > Options > Projects and Solutions > Build and Run

On Visual Studio Windows you also want to add `-v -v -v -v` to the mtouch additional arguments by right-clicking the project in the solution explorer and selecting `Properties`.
 Note: this is done automatically on Visual Studio for Mac when the log verbosity is set to diagnostic.

Easiest way to get exact version information:
- On Visual Studio for Mac: "Visual Studio" menu, "About Visual Studio" item, "Show Details" button.
- On Visual Studio for Windows: "Help menu", "About Microsoft Visual Studio" item.
Then copy/paste the version information (you can use the "Copy Information" button).
Comment 2 Balasubramanian 2017-06-20 05:43:26 UTC
Hi Vincent,

Please find the requested details from below,

Build log:

1>------ Build started: Project: GettingStarted_PDFViewer.iOS, Configuration: Debug iPhoneSimulator ------
1>  Connecting to Mac server 1XX.XX.XX...
1>  GettingStarted_PDFViewer.iOS -> D:\Xamarin\GettingStarted_PDFViewer\GettingStarted_PDFViewer\GettingStarted_PDFViewer.iOS\bin\iPhoneSimulator\Debug\GettingStarted_PDFVieweriOS.exe
1>  Detected signing identity:
1>    Bundle Id: com.yourcompany.GettingStarted_PDFViewer
1>    App Id: com.yourcompany.GettingStarted_PDFViewer
========== Build: 1 succeeded, 0 failed, 3 up-to-date, 0 skipped ==========

Please find the Xamarin and Visual studio installed version details from below,

Microsoft Visual Studio Professional 2015
Version 14.0.25123.00 Update 2
Microsoft .NET Framework
Version 4.7.02053

Installed Version: Professional

LightSwitch for Visual Studio 2015   00322-50052-03346-AA242
Microsoft LightSwitch for Visual Studio 2015

Visual Basic 2015   00322-50052-03346-AA242
Microsoft Visual Basic 2015

Visual C# 2015   00322-50052-03346-AA242
Microsoft Visual C# 2015

Visual C++ 2015   00322-50052-03346-AA242
Microsoft Visual C++ 2015

Windows Phone SDK 8.0 - ENU   00322-50052-03346-AA242
Windows Phone SDK 8.0 - ENU

Application Insights Tools for Visual Studio Package   7.18.00214.2
Application Insights Tools for Visual Studio

ASP.NET and Web Tools 2015.1   14.1.20512.0
ASP.NET and Web Tools 2015.1

ASP.NET Web Frameworks and Tools 2012.2   4.1.41102.0
For additional information, visit http://go.microsoft.com/fwlink/?LinkID=309563

ASP.NET Web Frameworks and Tools 2013   5.2.40314.0
For additional information, visit http://www.asp.net/

Azure App Service Tools v2.8.1   14.0.11123.0
Azure App Service Tools v2.8.1

Common Azure Tools   1.7
Provides common services for use by Azure Mobile Services and Microsoft Azure Tools.

JavaScript Language Service   2.0
JavaScript Language Service

JavaScript Project System   2.0
JavaScript Project System

Merq   1.1.17-rc (cba4571)
Command Bus, Event Stream and Async Manager for Visual Studio extensions.

Microsoft .NET Core Tools (Preview 1)   14.1.20512.0
Microsoft .NET Core Tools (Preview 1)

Microsoft Azure Mobile Services Tools   1.4
Microsoft Azure Mobile Services Tools

Mono Debugging for Visual Studio   Mono.Debugging.VisualStudio
Support for debugging Mono processes with Visual Studio.

NuGet Package Manager   3.4.4
NuGet Package Manager in Visual Studio. For more information about NuGet, visit http://docs.nuget.org/.

PreEmptive Analytics Visualizer   1.2
Microsoft Visual Studio extension to visualize aggregated summaries from the PreEmptive Analytics product.

SQL Server Data Tools   14.0.60311.1
Microsoft SQL Server Data Tools

Syncfusion Reference Manager
A useful add-in for adding and migrating Syncfusion Assembly References for Windows Forms, WPF, and Silverlight projects.

TypeScript tools for Visual Studio

Visual Studio Tools for Universal Windows Apps   14.0.25219.00
The Visual Studio Tools for Universal Windows apps allow you to build a single universal app experience that can reach every device running Windows 10: phone, tablet, PC, and more. It includes the Microsoft Windows 10 Software Development Kit.

Xamarin (c871575)
Visual Studio extension to enable development for Xamarin.iOS and Xamarin.Android.

Xamarin.Android (448f54f)
Visual Studio extension to enable development for Xamarin.Android.

Xamarin.iOS (30b6e87)
Visual Studio extension to enable development for Xamarin.iOS.

If you need any other details kindly revert back to me. We are in need of a solution badly.

Comment 3 Balasubramanian 2017-06-23 12:49:59 UTC
HI Guys,

Any update on the issue?

We are in need of the solution to proceed further on the implementation.Please consider this as a high priority.

Comment 4 Vincent Dondain [MSFT] 2017-06-26 16:41:48 UTC

I wrote a quick test case to double check your issue: https://www.dropbox.com/s/l5m7pymvl1ykegd/Bug57542.zip?dl=0

It works just fine, I'm loading 1000 UIViews. However, I'm not entirely confident that iOS UIStackView are designed to handle supermassive numbers of objects (:

Also please note that I asked for a test case in my previous message because that is usually the best way for us to test your issue, see the code you wrote, check the project options, etc...

I would also like to emphasize that Bugzilla is for bugs against the Xamarin platform and we might not be as quick as the community to answer iOS-SDK-specific questions. 

For questions about how to best use UIStackViews and better understand its limitations, the broader developer community would be the best and quickest place for additional help.

Posting a question on Stack Overflow [0] or the Xamarin Forums [1] would be the best next step.

[0] http://stackoverflow.com/questions/tagged/xamarin
[1] https://forums.xamarin.com/

In case it might also be a helpful reference, you can find some general recommendations on the best places to ask various kinds of questions about Xamarin on: