diff --git a/Pixiview.iOS/Pixiview.iOS.csproj b/Pixiview.iOS/Pixiview.iOS.csproj
index 58f3b6b..872ce70 100644
--- a/Pixiview.iOS/Pixiview.iOS.csproj
+++ b/Pixiview.iOS/Pixiview.iOS.csproj
@@ -61,6 +61,7 @@
ARM64
iPhone Developer
Entitlements.plist
+ true
diff --git a/Pixiview/Illust/IllustCollectionPage.cs b/Pixiview/Illust/IllustCollectionPage.cs
index 4085584..09453ed 100644
--- a/Pixiview/Illust/IllustCollectionPage.cs
+++ b/Pixiview/Illust/IllustCollectionPage.cs
@@ -58,8 +58,6 @@ namespace Pixiview.Illust
public IllustCollection IllustCollection { get; set; }
protected virtual bool IsFavoriteVisible => true;
- protected Thickness totalBarOffset;
- protected Thickness navigationBarOffset;
protected bool loaded;
private T illustData;
@@ -123,30 +121,15 @@ namespace Pixiview.Illust
}
}
- public override void OnOrientationChanged(Orientation orientation)
+ protected override void OnSizeAllocated(double width, double height)
{
- int columns;
- switch (orientation)
- {
- case Orientation.Portrait:
- columns = 2;
- break;
- case Orientation.PortraitUpsideDown:
- columns = isPhone ? 4 : 2;
- break;
- case Orientation.Unknown:
- case Orientation.LandscapeLeft:
- case Orientation.LandscapeRight:
- default:
- columns = 4;
- break;
- }
+ base.OnSizeAllocated(width, height);
+ var columns = width > height ? 4 : 2;
if (Columns != columns)
{
- App.DebugPrint($"change columns to {columns}");
Columns = columns;
+ App.DebugPrint($"change columns to {columns}");
}
- base.OnOrientationChanged(orientation);
}
#endregion
diff --git a/Pixiview/Illust/RankingPage.xaml.cs b/Pixiview/Illust/RankingPage.xaml.cs
index fb3d9fa..cc2b849 100644
--- a/Pixiview/Illust/RankingPage.xaml.cs
+++ b/Pixiview/Illust/RankingPage.xaml.cs
@@ -21,39 +21,29 @@ namespace Pixiview.Illust
public RankingPage()
{
- totalBarOffset = new Thickness(0, AppShell.TotalBarOffset.Top + 50, 0, 0);
- navigationBarOffset = new Thickness(0, AppShell.NavigationBarOffset.Top + 50, 0, 0);
-
Resources.Add("cardView", GetCardViewTemplate());
InitializeComponent();
}
public override void OnOrientationChanged(Orientation orientation)
{
- int columns;
switch (orientation)
{
case Orientation.Portrait:
- columns = 2;
- PageTopMargin = totalBarOffset;
+ PageTopMargin = new Thickness(0, AppShell.TotalBarOffset.Top + 50, 0, 0);
break;
case Orientation.PortraitUpsideDown:
- columns = isPhone ? 4 : 2;
- PageTopMargin = isPhone ? navigationBarOffset : totalBarOffset;
+ PageTopMargin = isPhone ?
+ new Thickness(0, AppShell.NavigationBarOffset.Top + 50, 0, 0) :
+ new Thickness(0, AppShell.TotalBarOffset.Top + 50, 0, 0);
break;
case Orientation.Unknown:
case Orientation.LandscapeLeft:
case Orientation.LandscapeRight:
default:
- columns = 4;
- PageTopMargin = navigationBarOffset;
+ PageTopMargin = new Thickness(0, AppShell.NavigationBarOffset.Top + 50, 0, 0);
break;
}
- if (Columns != columns)
- {
- App.DebugPrint($"ranking page, change columns to {columns}");
- Columns = columns;
- }
}
protected override IEnumerable DoGetIllustList(IllustData data, ICommand command)
diff --git a/Pixiview/Illust/RecommendsPage.xaml.cs b/Pixiview/Illust/RecommendsPage.xaml.cs
index cff8e96..c45ad67 100644
--- a/Pixiview/Illust/RecommendsPage.xaml.cs
+++ b/Pixiview/Illust/RecommendsPage.xaml.cs
@@ -28,39 +28,29 @@ namespace Pixiview.Illust
public RecommendsPage()
{
- totalBarOffset = new Thickness(0, AppShell.TotalBarOffset.Top + 40, 0, 0);
- navigationBarOffset = new Thickness(0, AppShell.NavigationBarOffset.Top + 40, 0, 0);
-
Resources.Add("cardView", GetCardViewTemplate());
InitializeComponent();
}
public override void OnOrientationChanged(Orientation orientation)
{
- int columns;
switch (orientation)
{
case Orientation.Portrait:
- columns = 2;
- PageTopMargin = totalBarOffset;
+ PageTopMargin = new Thickness(0, AppShell.TotalBarOffset.Top + 40, 0, 0);
break;
case Orientation.PortraitUpsideDown:
- columns = isPhone ? 4 : 2;
- PageTopMargin = isPhone ? navigationBarOffset : totalBarOffset;
+ PageTopMargin = isPhone ?
+ new Thickness(0, AppShell.NavigationBarOffset.Top + 40, 0, 0) :
+ new Thickness(0, AppShell.TotalBarOffset.Top + 40, 0, 0);
break;
case Orientation.Unknown:
case Orientation.LandscapeLeft:
case Orientation.LandscapeRight:
default:
- columns = 4;
- PageTopMargin = navigationBarOffset;
+ PageTopMargin = new Thickness(0, AppShell.NavigationBarOffset.Top + 40, 0, 0);
break;
}
- if (Columns != columns)
- {
- App.DebugPrint($"ranking page, change columns to {columns}");
- Columns = columns;
- }
}
protected override IEnumerable DoGetIllustList(IllustData data, ICommand command)