如何在 Zebble for Xamarin 中创建带有自定义内容(如 android)的对话框?

How to create a dialog with custom content like android in Zebble for Xamarin?

我想创建一个对话框来编辑某些字段,我需要为对话框制作自定义内容并从中获取响应以重新加载数据。所以,我阅读了下面link

中关于对话框和弹出窗口的所有内容

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;
}

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

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

主页:

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

弹出页面的关闭按钮:

...
await Nav.HidePopup(someResultValue);

备注:

  • "SomeType"可以是boolean或string等简单类型,也可以是复杂的class.

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

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