如何通过在弹出窗口外按下来关闭弹出窗口

时间:2018-10-26 10:41:37

标签: c# xamarin.forms xamarin.android

我使用此命令CloseWhenBackgroundIsClicked =“ True”关闭弹出窗口,但是它不起作用,如何在不添加关闭按钮的情况下通过在其外部单击来关闭弹出窗口

<?xml version="1.0" encoding="utf-8" ?>
    <pages:PopupPage
           xmlns:pages="clr-namespace:Rg.Plugins.Popup.Pages;assembly=Rg.Plugins.Popup"
                 xmlns:animations="clr-namespace:Rg.Plugins.Popup.Animations;assembly=Rg.Plugins.Popup"
                 xmlns="http://xamarin.com/schemas/2014/forms"
                 xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
                 x:Class="Agtmovel.Views.MnUsuario"
                 CloseWhenBackgroundIsClicked="True"
                   >

5 个答案:

答案 0 :(得分:0)

首先也许尝试设置这个

<Popup StaysOpen=”False“>

否则,我建议您尝试一些失焦事件。

答案 1 :(得分:0)

我认为您已经为PopupPage中主视图的VerticalOptions和Horizo​​ntalOptions设置了FillFillAndExpand,它将无法像here那样工作。

尽管这不能解决您的问题,请尝试使用this解决方案。

答案 2 :(得分:0)

这是插件的bug

您可以更新插件的版本或查看ticket中的代码来解决它。

答案 3 :(得分:0)

Xaml侧面更改= CloseWhenBackgroundIsClicked =“ True” => BackgroundClicked =“ CloseClick”

<?xml version="1.0" encoding="utf-8" ?>
<pages:PopupPage
       xmlns:pages="clr-namespace:Rg.Plugins.Popup.Pages;assembly=Rg.Plugins.Popup"
             xmlns:animations="clr-namespace:Rg.Plugins.Popup.Animations;assembly=Rg.Plugins.Popup"
             xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="Agtmovel.Views.MnUsuario"
             BackgroundClicked="CloseClick"
               >

BackgroundClicked属性事件=

private async void CloseClick(object sender, EventArgs e)
    {
        await PopupNavigation.Instance.PopAsync();
    }

答案 4 :(得分:0)

只需在前端使用它

....
 xmlns:rg="http://rotorgames.com"
 CloseWhenBackgroundIsClicked="True">