Мои режимы Xamarin Forms с переключением режимов Пейзаж в Портрет хорошо работают на iOS.
В Android Я никогда не получаю вызов на событие OnMainDisplayInfoChanged
.
public BaseVM()
{
Connectivity.ConnectivityChanged += Connectivity_ConnectivityChanged;
IsConnected = Connectivity.NetworkAccess != NetworkAccess.Internet;
isConnected = CrossConnectivity.Current.IsConnected;
DeviceDisplay.MainDisplayInfoChanged += OnMainDisplayInfoChanged;
Title = isConnected ? "Students\r\n(webservice)" :
"Students\r\n(local cache)";
IsPortraitMode = DeviceDisplay.MainDisplayInfo.Orientation == DisplayOrientation.Portrait;
NetAccess = Connectivity.NetworkAccess.ToString();
}
private void OnMainDisplayInfoChanged(object sender, DisplayInfoChangedEventArgs e)
{
IsPortraitMode = e.DisplayInfo.Orientation == DisplayOrientation.Portrait;
}
Мой MainActivity Decorator выглядит следующим образом
[Activity(Label = "TripCalculator", Icon = "@mipmap/icon", Theme = "@style/MainTheme", MainLauncher = true,
ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation, ScreenOrientation = ScreenOrientation.Landscape)]
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
{
protected override void OnCreate(Bundle savedInstanceState)
{