【发布时间】:2022-01-20 17:05:54
【问题描述】:
我已经读过,为了提高性能,如果布局中的属性值与布局的默认值相同,则不应设置该属性的值。举个简单的例子,如果我有一个 StackLayout 并且我希望它垂直放置,我可能会写
<StackLayout
Orientation="Vertical"
>
</StackLayout>
但我从经验中知道Vertical 是 StackLayout 的默认方向,因此设置此值是多余的,会降低性能。
我不知道许多其他属性的默认值,例如Padding、Margin、HorizontalOptions、VerticalOptions 和其他所有属性,以及其他布局,例如Grid。
是否有更简单的方法来查找这些值,以避免在设置和不设置值的情况下尝试每个布局?
【问题讨论】:
-
你在哪里读到的?根据我的经验,它可能产生任何明显影响的唯一地方是
style声明。即使在那里,它也很少成为问题。如果您有性能问题,这不是解决问题所需要的。性能问题由“测量和布局”时间支配。通常的解决方法是找到一种减少布局类嵌套的方法(可以包含其他元素作为子元素的类,例如网格或堆栈布局)。无论如何,大多数选项默认为最常用的值。填充边距为零... -
...您必须找到每个属性的文档页面。例如。 StackLayout.Spacing 说它默认为
6。如果您发现一个文档页面没有说明默认值是什么,并且最有可能的情况也不明显,那么请在该页面上使用评论反馈来提及这个缺失的信息。 -
"默认情况下,StackLayout 的方向是垂直"。 docs.microsoft.com/en-us/xamarin/xamarin-forms/user-interface/…
标签: xaml xamarin xamarin.forms layout properties