0
我想显示弹出使用AbsoluteLayout。点击按钮后,Iam将stacklayout设置为可见。但没有显示。StackLayout isVisible属性不工作在Xamarin形式
<AbsoluteLayout x:Name="absoluteLayout">
<StackLayout x:Name="layout1"
BackgroundColor="White"
Spacing="1"
AbsoluteLayout.LayoutBounds="0,0,1,1"
AbsoluteLayout.LayoutFlags="All">
<StackLayout>
<StackLayout x:Name="popupLayout"
BackgroundColor="Gray"
AbsoluteLayout.LayoutBounds="0,0,1,1"
AbsoluteLayout.LayoutFlags="All"
IsVisible="False"
Spacing="0">
//Content
</StackLayout>
</AbsoluteLayout>
点击一个按钮,设置能见度为true
public void OnButtonClick(object sender, EventArgs args){
popupLayout.IsVisible = true;
}
我试图popupLayout的知名度OnAppearing设置为false,然后启用按钮点击,仍然有同样的行为。
更新:添加代码细节。通过设置popupLayout的背景,我开始知道按钮点击布局是可见的,但其内容/子项不显示。我们是否应该分别启用子视图/元素?
我敢肯定它是ISVISIBLE =与 “假” - >“< - 如果你错过了,你可能有一个编译器的问题,我已经在StackLayouts和Grids上应用了IsVisible并且从来没有遇到过这个问题。但是你也可以检查这篇文章http://stackoverflow.com/questions/29006354/toggling-isvisible-for-an-stacklayout-inside-scrollview-如果您使用的是旧版本的Xamarin,则不会更新。 – eX0du5
您似乎很奇怪不要给任何'AbsoluteLayout'子任何'AbsoluteLayout.LayoutBounds'。如果你这样做会发生什么? –
为了简化,我用这种格式表示了我的代码。 LayoutBounds实际上定义为 – user3165999