如何在Zebble for Xamarin中创建一个包含android等自定义内容的对话框?

时间:2017-04-14 14:13:08

标签: .net visual-studio xamarin xamarin-zebble zebble

我想创建一个用于编辑某个字段的对话框,我需要为对话框创建自定义内容并从中获取响应以重新加载数据。所以,我在下面的链接中阅读了有关对话框和弹出窗口的所有内容

http://zebble.net/docs/alerts-and-dialogs

然后我测试了这段代码:

在另一个页面中,我想显示弹出窗口:

await Nav.ShowPopUp<CustomeDialogPage>();

我的自定义Zebble页面:

<z-Component z-type="CustomeDialogPage" 
         z-base="Page" 
         z-namespace="UI.Pages" 
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
         xsi:noNamespaceSchemaLocation="../.zebble-schema.xml">

  <Stack CssClass="customedialog">
     <Button Text="OK" />
  </Stack>  

  </z-Component>

然后我为那个

创建样式表
.customedialog {
    width: 300px;
    height: 100px;
    background: #ffffff;
    border: 2px;
    padding: 5px;
    margin-top: 100px;
}

但是,我无法关闭弹出窗口或为其添加标题部分,我不知道如何获得它的结果。 这是一个我想要使用的示例对话框,如下所示:

enter image description here

1 个答案:

答案 0 :(得分:1)

Zebble为您提供Nav弹出方法的其他重载,以帮助您实现这一目标。

主页:

var result = await Nav.ShowPopup<TargetPage, SomeType>();
// Now you can use "result".

弹出页面的关闭按钮:

...
await Nav.HidePopup(someResultValue);

注意:

  • &#34; SOMETYPE&#34;可以是一个简单的类型,如布尔值或字符串,也可以是一个复杂的类。

  • 弹出窗口返回的对象类型必须与主机父页面预期的对象类型匹配。

您可以在此处查看完整规范:http://zebble.net/docs/showing-popup-pages