Emi*_*m23 10 absolutelayout xamarin.forms
我正在使用AbsoluteLayout的Xamarin.Forms,但是,我不确定如何处理元素的位置.
我正在使用比例值,所以如果我AbsoluteLayout.LayoutBounds="1, 0.05, 0.15, 0.1"在每个值都是比例的位置放置一个元素(所以标志是"全部" AbsoluteLayout.LayoutFlags="All")
它将放置在屏幕的顶部/右侧.然而,它不会占据一席之地.那意味着什么呢?如果外面的每个元素都重新定位到屏幕上?
但是现在,当你放置一个元素时,另一个问题是基于X/Y位置?是中心还是其他方面?
在这个例子中,我尝试使用0.15,但渲染有点奇怪,所以我把0然后渲染匹配我想要的.
你可以说"测试它,你会看到."然而,对于设计师和我来说,定位每个元素是浪费时间,因为我们不确定它是如何工作的.因此,我们努力尝试使用debuging ..
我们还在搜索是否存在一个软件来生成有关设计师设计的位置.我们指的是元素的位置X/Y百分比.
预先感谢 !
Fra*_*ois 22
使用AbsoluteLayoutFlag.All,Rectangle bounds参数具有以下含义:
宽度和高度是人们通常所期望的.然而,x和y不是因为人们更习惯于"左"和"顶".所以你可以编写一个转换器来将左边的百分比转换为x,将最高百分比转换成y:
x =左/(1 - 宽度)
y =顶部/(1 - 高度)
<AbsoluteLayout BackgroundColor="Yellow">
<BoxView
Color="Red"
AbsoluteLayout.LayoutBounds="1.0, 1.0, 0.5, 0.5"
AbsoluteLayout.LayoutFlags="All" />
<BoxView
Color="Green"
WidthRequest="50"
HeightRequest="50"
AbsoluteLayout.LayoutBounds="0.1, 0.1, AutoSize, AutoSize"
AbsoluteLayout.LayoutFlags="PositionProportional" />
<BoxView
Color="Blue"
AbsoluteLayout.LayoutBounds="0.25, 0.25, 0.5, 0.5"
AbsoluteLayout.LayoutFlags="All" />
</AbsoluteLayout>
Run Code Online (Sandbox Code Playgroud)
当我研究时,AbsoluteLayout我创建了这个样本
测试它,你会看到
我已经从我的调查决定:
X和Y是左上角的坐标View.这是相对的立场.正如您所看到的那样,红色矩形1.0, 1.0是中心位置,因此,据我所知,屏幕的宽度为100%2.0(高度相同).内部的所有视图都AbsoluteLayout取决于父级的值AbsoluteLayout.
编辑:
X并且Y是中心坐标View,而不是左上角.100%Width是1.0.
| 归档时间: |
|
| 查看次数: |
13047 次 |
| 最近记录: |