我最近在一款Xamarin Forms应用程序中测试了包含1000个列表项的ListView
的CachingStrategy
。列表项是从ViewCell
的数据模板创建的。我尝试使用CachingStrategy
选项的RecycleElement
。
当我使用Xamarin Profiler对Android应用程序进行分析时,部署在Xamarin Anroid Player(模拟器)上,我注意到当我滚动列表时内存分配不会增加(在分配汇总选项卡上)。但是,当我在模拟器上为iPhone应用程序进行分析时,我注意到在分配汇总选项卡上没有显示任何数据。因此,我在滚动列表时捕获了一些快照,并注意到每当我滚动列表时(向上或向下),内存分配就会不断增加。
为什么RecycleElement
在iOS(iPhone)上不起作用?
我正在使用Mac进行开发。 这里是我的工具:
=== Xamarin Studio ===
版本5.10.1(构建3) 安装UUID:7ae992a3-b710-4297-ba1d-0c519fbb2ea8 运行时: Mono 4.2.1(显式/6dd2d0d) GTK+ 2.24.23(Raleigh主题)
Package version: 402010102
=== Xamarin.Profiler ===
版本: 0.24.0.0 位置: /Applications/Xamarin Profiler.app/Contents/MacOS/Xamarin Profiler
=== Apple开发工具 ===
Xcode 7.1.1 (9081) 构建 7B1005
=== Xamarin.iOS ===
版本: 9.2.1.54 (企业版) 哈希值: eb4c1ef 分支: master 构建日期: 2015-12-01 02:12:30-0500
=== Xamarin.Android ===
版本: 6.0.0.34 (企业版) Android SDK: /Users/haider/Library/Developer/Xamarin/android-sdk-macosx 支持的 Android 版本: 4.0.3 (API 级别 15) 4.4 (API 级别 19) 5.0 (API 级别 21) 5.1 (API 级别 22) 6.0 (API 级别 23)
SDK 工具版本: 24.4.1 SDK 平台工具版本: 23.1 rc1 SDK 构建工具版本: 23.0.2
Java SDK: /usr java 版本 "1.7.0_71" Java(TM) SE Runtime Environment (build 1.7.0_71-b14) Java HotSpot(TM) 64-Bit Server VM (build 24.71-b01, mixed mode)
=== Xamarin Android Player ===
版本: 0.6.5 位置: /Applications/Xamarin Android Player.app
=== Xamarin.Mac ===
版本: 2.4.0.109 (入门版)
=== 构建信息 ===
发布 ID: 510010003 Git 修订版本: f2021a209d66d49cbc0649a6d968b29040e57807 构建日期: 2015-12-01 10:43:40-05 Xamarin 插件: dfd4f5103e8951edbc8ac24480b53b53c55e04ff 构建 lane: monodevelop-lion-cycle6-baseline
=== 操作系统 ===
Mac OS X 10.11.1 Darwin Haiders-MacBook-Pro.local 15.0.0 Darwin Kernel Version 15.0.0 Sat Sep 19 15:53:46 PDT 2015 root:xnu-3247.10.11~1/RELEASE_X86_64 x86_64