iOS 模拟器在 Apple M1 上滚动太快
Posted
技术标签:
【中文标题】iOS 模拟器在 Apple M1 上滚动太快【英文标题】:iOS Simulator scrolls too fast on Apple M1 【发布时间】:2021-04-05 03:12:40 【问题描述】:我正在运行一个颤振项目,当在模拟器上拖动任何列表或滚动视图时,它滚动的力太大,几乎不可能到达我需要的行。
这只发生在模拟器中,在真实设备上似乎可以正常工作。此外,当我迁移到 Apple M1 MacBook Pro 时,这个问题就开始了。
有什么想法吗?
【问题讨论】:
如果您的问题不在设备上或造成性能卡顿,我在这里看不到问题,可能您的计算机处理速度比 iPhone 快。只需验证您的表现还可以,这应该足够了。 【参考方案1】:我遇到了类似的问题,但就我而言,该问题与速度无关,而是不同的问题。
具体来说,如果您强制您的 ios 模拟器在 Rosetta 下运行,您会看到它按预期工作。不知道为什么,但这就是我正在经历的。始终可在 1.22.5(稳定)中重现。
要在 Rosetta 中运行,右键单击 Xcode 并选择“显示包内容”,从那里导航到“内容 > 开发人员 > 应用程序”,在那里你会找到模拟器应用程序。如果您右键单击它并选择“获取信息”,您将找到一个使用 Rosetta 运行它的选项。
2021 年 9 月 14 日更新: Xcode 12.5.1 不再需要上述解决方法。开箱即用的滚动效果很好。
【讨论】:
这确实有助于解决类似的问题,即滚动“滞后”/“口吃”。非常感谢! 修复了这个非常令人沮丧的问题。谢谢,@valvoline! 这将使模拟器在重型应用程序上滞后;性能不会那么好。 我在 M1 Pro 上使用 Xcode 13.1,但仍然遇到此问题。强制模拟器在 Rosetta 下运行修复了它。 M1 已经上市一年多了,不知道为什么我们还在处理这些错误。 这行得通!但是,我将删除有关它与 Xcode 12.5.1 一起使用的更新。我在 13.2 上,它仍然坏了。【参考方案2】:如果你使用的是 androidStudio,试试这个。
-
找到“Flutter Performance”并打开。
-
启用慢速动画
模拟器滚动会慢很多。
【讨论】:
【参考方案3】:这可能是因为模拟器由于使用了 ARM 而变得更快。
它是唯一的加速动画吗?也许还有更多。如果是这样,设置timeDilatation
。
import 'package:flutter/scheduler.dart' show timeDilation;
void main()
timeDilation = 2.0;
runApp(new MyApp());
【讨论】:
谢谢!好电话,但实际上它只是列表。增加 timeDilation 仍然会导致列表溢出(尽管速度很慢),并且页面转换速度慢得令人不舒服。 那么问题不在模拟器上。以上是关于iOS 模拟器在 Apple M1 上滚动太快的主要内容,如果未能解决你的问题,请参考以下文章
iOS 模拟器无法正确滚动(M1 + React Native 项目)
如何修复 iOS 模拟器 [native-run] ERR_DEVICE_LOCKED:在 Apple Silicon (M1) 上 1 分钟后设备仍被锁定?
Xcode 13.1 卡在 Apple M1 Pro 上安装模拟器
Android Studio:“AVD Pixel_2_API_30 的模拟器进程已终止。”在 MacBook Pro M1(Apple Silicon)上