Xamarin Forms Rg.Plugins.Popup - PullRequest
       3

Xamarin Forms Rg.Plugins.Popup

0 голосов
/ 06 июня 2018

Я пытаюсь создать всплывающую страницу в Xamarin Forms 3.0.0.530893.Я использую Rg.Plugins.Popup v.1.1.4.158-pre и тестирую его на Android 8.0.0.Но всплывающее окно отображается в левом верхнем углу, независимо от того, что я поставил в параметрах Горизонтально и Вертикально.

Вот моя всплывающая страница

<?xml version="1.0" encoding="utf-8" ?>
<pages:PopupPage xmlns="http://xamarin.com/schemas/2014/forms"
         xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
         x:Class="ScanApp.Page.Popup.SignOutPopup"
         xmlns:pages="clr-namespace:Rg.Plugins.Popup.Pages;assembly=Rg.Plugins.Popup">
  <StackLayout BackgroundColor="White" HorizontalOptions="Center" VerticalOptions="Center">
    <Label Text="Log ud" TextColor="Black"></Label>
    <Label Text="AutomationProperties du sikker på du ønsker at logge ud?"></Label>
    <Button Text="LOG UD"></Button>
    <Button Text="ANNULLER"></Button>
  </StackLayout>
</pages:PopupPage>

А вот и бэкэнд

using Rg.Plugins.Popup.Pages;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using Xamarin.Forms;
using Xamarin.Forms.Xaml;

namespace ScanApp.Page.Popup
{
  [XamlCompilation(XamlCompilationOptions.Compile)]
  public partial class SignOutPopup : PopupPage
  {
    public SignOutPopup ()
    {
        InitializeComponent ();
    }
}

Здесь я инициализирую плагин для Android в MainActivity OnCreate

 Rg.Plugins.Popup.Popup.Init(this,bundle);

Здесь я нажимаюстраница

Navigation.PushPopupAsync(new SignOutPopup());

Ответы [ 2 ]

0 голосов
/ 08 июня 2018

Проблема была не с плагином или всплывающей страницей.Проблема была в этих строках, которые я вставил в Android MainActivity, чтобы приложение заполнило весь экран

if (Build.VERSION.SdkInt >= Android.OS.BuildVersionCodes.Lollipop)
{
   Window.AddFlags(WindowManagerFlags.LayoutNoLimits);
   Window.AddFlags(WindowManagerFlags.LayoutInScreen);
   Window.DecorView.SetFitsSystemWindows(true);
}
0 голосов
/ 07 июня 2018

Я не уверен, как именно работает этот плагин, но я уже использовал его в прошлом проекте и вот что я сделал:

Я предлагаю вам определить свою страницу следующим образом.Внедрите свой стековый макет в полноэкранный фрейм и установите для него маржу и отступ:* 'или' HasShadow ', чтобы придать вашей Рамке реальный всплывающий вид ... И ваша рамка должна быть центрирована.

Скажите, работает ли она ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...