Xamarin.forms: рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдмреИрдХ рдмрдЯрди рдХреЛ рдЗрдВрдЯрд░рд╕реЗрдкреНрдЯ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛

рдХреЛ рдирд┐рд░реНрдорд┐рдд 22 рдлрд╝рд░ре░ 2018  ┬╖  53рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: xamarin/Xamarin.Forms

рд╡рд┐рд╡рд░рдг

рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдмреИрдХ рдмрдЯрди рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдмреИрдХ рдмрдЯрди рдХреЗ рд╕рдорд╛рди рдХреЛрдб рдкрде рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рд╕реЗ рдПрдВрдбреНрд░реЙрдЗрдб рдкрд░ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реЛрддрд╛ рд╣реИ (рдФрд░ рдЬреЛ рдореИрдВрдиреЗ рдкрдврд╝рд╛ рд╣реИ, рдЖрдИрдУрдПрд╕)ред

рдкреНрд░рдЬрдирди рдХреЗ рдЪрд░рдг

  1. MasterDetailPage рдкрд░ "OnBackButtonPressed ()" рд╡рд┐рдзрд┐ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░реЗрдВред
  2. Android рдкрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЪрд▓рд╛рдПрдВ рдФрд░ MasterDetailPage рдореЗрдВ рдПрдХ рд╡рд┐рд╡рд░рдг рдкреГрд╖реНрда рдкрд░ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░реЗрдВред
  3. рдХрдорд╛рдВрдб рдмрд╛рд░ рдкрд░ "рдмреИрдХ" рдПрд░реЛ рджрдмрд╛рдПрдВред

рдЕрдкреЗрдХреНрд╖рд┐рддреН рд╡реНрдпрд╡рд╣рд╛рд░

"OnBackButtonPressed ()" рд╡рд┐рдзрд┐ рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдареАрдХ рдЙрд╕реА рддрд░рд╣ рдЬрдм рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ "рдмреИрдХ" рдмрдЯрди рджрдмрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡реНрдпрд╡рд╣рд╛рд░

рд╡рд┐рдзрд┐ рдХрд╛ рдЖрд╣реНрд╡рд╛рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдореВрд▓рднреВрдд рдЬрд╛рдирдХрд╛рд░реА

  • рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╕рд╛рде рд╕рдВрд╕реНрдХрд░рдг:
  • рдЕрдВрддрд┐рдо рдЬреНрдЮрд╛рдд рдЕрдЪреНрдЫрд╛ рд╕рдВрд╕реНрдХрд░рдг: рдЕрдЬреНрдЮрд╛рдд
  • рдЖрдИрдбреАрдИ: рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ 2017
  • рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдо рд▓рдХреНрд╖реНрдп рдврд╛рдВрдЪреЗ:

    • рдПрдВрдбреНрд░реЙрдЗрдб: 8.0 рдУрд░рд┐рдпреЛ

    • UWP: UWP 16299 (рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ!)

  • Android рд╕рдорд░реНрдерди рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕рдВрд╕реНрдХрд░рдг: v7/v4
  • рдиреБрдЧреЗрдЯ рдкреИрдХреЗрдЬ:

NETStandard.Library {2.0.1} SQLite.Net.Standard
System.ServiceModel.Primitives {4.4.1} Adapt.Model.Helpdesk
NETStandard.Library {2.0.1} Adapt.Model.Helpdesk
System.Runtime.Serialization.Pri... {4.3.0} Adapt.Model.Helpdesk
System.ServiceModel.Http {4.4.1} Adapt.XivicClient.Standard
System.Reflection.TypeExtensions {4.4.0} Adapt.XivicClient.Standard
System.ServiceModel.Primitives {4.4.1} Adapt.XivicClient.Standard
NETStandard.Library {2.0.1} Adapt.XivicClient.Standard
System.Runtime.Serialization.Pri... {4.3.0} Adapt.XivicClient.Standard
System.ServiceModel.Primitives {4.4.1} Adapt.Model.Common.Standard
NETStandard.Library {2.0.1} Adapt.Model.Common.Standard
System.Runtime.Serialization.Pri... {4.3.0} Adapt.Model.Common.Standard
NETStandard.Library {2.0.1} Adapt.Presentation.Standard
Xamarin.Forms {2.5.0.280555} Adapt.Presentation.Standard
System.ServiceModel.Http {4.4.1} Adapt.XivicClient.Database.Standard
System.ServiceModel.Primitives {4.4.1} Adapt.XivicClient.Database.Standard
NETStandard.Library {2.0.1} Adapt.XivicClient.Database.Standard
System.Runtime.Serialization.Pri... {4.3.0} Adapt.XivicClient.Database.Standard
System.ServiceModel.Primitives {4.4.1} Adapt.Model.Whakatane
NETStandard.Library {2.0.1} Adapt.Model.Whakatane
System.Runtime.Serialization.Pri... {4.3.0} Adapt.Model.Whakatane
NETStandard.Library {2.0.1} Adapt.Business.Standard
Microsoft.CSharp {4.4.1} Adapt.Business.Standard
System.ServiceModel.Primitives {4.4.1} Adapt.Data.Generic.Standard
NETStandard.Library {2.0.1} Adapt.Data.Generic.Standard
System.Runtime.Serialization.Pri... {4.3.0} Adapt.Data.Generic.Standard
Xamarin.Forms.Maps {2.5.0.280555} Adapt.Presentation.XamarinForms
NETStandard.Library {2.0.1} Adapt.Presentation.XamarinForms
Syncfusion.Xamarin.SfDataGrid {15.4.0.20} Adapt.Presentation.XamarinForms
Xamarin.Forms {2.5.0.280555} Adapt.Presentation.XamarinForms
Xamarin.Android.Arch.Core.Common {1.0.0} Adapt.Presentation.Android
Xamarin.Android.Arch.Lifecycle.C... {1.0.1} Adapt.Presentation.Android
Xamarin.Android.Arch.Lifecycle.R... {1.0.0} Adapt.Presentation.Android
Xamarin.Android.Support.Animated... {реирем.рез.реж.рез} Adapt.Presentation.Android
Xamarin.Android.Support.Annotations {26.1.0.1} Adapt.Presentation.Android
Xamarin.Android.Support.Compat {26.1.0.1} Adapt.Presentation.Android
Xamarin.Android.Support.Core.UI {26.1.0.1} Adapt.Presentation.Android
Xamarin.Android.Support.Core.Utils {26.1.0.1} Adapt.Presentation.Android
Xamarin.Android.Support.Design {26.1.0.1} Adapt.Presentation.Android
Xamarin.Android.Support.Fragment {26.1.0.1} Adapt.Presentation.Android
Xamarin.Android.Support.Media.Co... {26.1.0.1} Adapt.Presentation.Android
Xamarin.Android.Support.Transition {реирем.рез.реж.рез} Adapt.Presentation.Android
Xamarin.Android.Support.v4 {26.1.0.1} Adapt.Presentation.Android
Xamarin.Android.Support.v7.AppCo... {26.1.0.1} Adapt.Presentation.Android
Xamarin.Android.Support.v7.CardView {26.1.0.1} Adapt.Presentation.Android
Xamarin.Android.Support.v7.Media... {26.1.0.1} Adapt.Presentation.Android
Xamarin.Android.Support.v7.Palette {26.1.0.1} Adapt.Presentation.Android
Xamarin.Android.Support.v7.Recyc... {26.1.0.1} Adapt.Presentation.Android
Xamarin.Android.Support.Vector.D... {26.1.0.1} Adapt.Presentation.Android
Xamarin.Forms {2.5.0.280555} Adapt.Presentation.Android
Xamarin.Forms {2.5.0.280555} Adapt.Presentation.iOS
Microsoft.NETCore.UniversalWindo... {6.0.7} Adapt.Presentation.UWP
Xamarin.Forms {2.5.0.280555} Adapt.Presentation.UWP
Esri.ArcGISRuntime.Xamarin.Android {100.2.0} Adapt.Presentation.Xivic.Android
Esri.ArcGISRuntime.Xamarin.Forms {100.2.0} Adapt.Presentation.Xivic.Android
Microsoft.NETCore.Platforms {2.0.1} Adapt.Presentation.Xivic.Android
NETStandard.Library {2.0.1} Adapt.Presentation.Xivic.Android
Syncfusion.Xamarin.Core {15.4.0.20} Adapt.Presentation.Xivic.Android
Syncfusion.Xamarin.GridCommon {15.4.0.20} Adapt.Presentation.Xivic.Android
Syncfusion.Xamarin.SfDataGrid {15.4.0.20} Adapt.Presentation.Xivic.Android
Syncfusion.Xamarin.SfDataGrid.An... {15.4.0.20} Adapt.Presentation.Xivic.Android
Syncfusion.Xamarin.SfNumericTextBox {15.4.0.20} Adapt.Presentation.Xivic.Android
Syncfusion.Xamarin.SfNumericText... {15.4.0.20} Adapt.Presentation.Xivic.Android
Xamarin.Android.Arch.Core.Common {1.0.0} Adapt.Presentation.Xivic.Android
Xamarin.Android.Arch.Lifecycle.C... {1.0.1} Adapt.Presentation.Xivic.Android
Xamarin.Android.Arch.Lifecycle.R... {1.0.0} Adapt.Presentation.Xivic.Android
Xamarin.Android.Support.Animated... {26.1.0.1} Adapt.Presentation.Xivic.Android
Xamarin.Android.Support.Annotations {26.1.0.1} Adapt.Presentation.Xivic.Android
Xamarin.Android.Support.Compat {26.1.0.1} Adapt.Presentation.Xivic.Android
Xamarin.Android.Support.Core.UI {26.1.0.1} Adapt.Presentation.Xivic.Android
Xamarin.Android.Support.Core.Utils {26.1.0.1} Adapt.Presentation.Xivic.Android
Xamarin.Android.Support.Design {26.1.0.1} Adapt.Presentation.Xivic.Android
Xamarin.Android.Support.Fragment {26.1.0.1} Adapt.Presentation.Xivic.Android
Xamarin.Android.Support.Media.Co... {26.1.0.1} Adapt.Presentation.Xivic.Android
Xamarin.Android.Support.Transition {26.1.0.1} Adapt.Presentation.Xivic.Android
Xamarin.Android.Support.v4 {26.1.0.1} Adapt.Presentation.Xivic.Android
Xamarin.Android.Support.v7.AppCo... {26.1.0.1} Adapt.Presentation.Xivic.Android
Xamarin.Android.Support.v7.CardView {26.1.0.1} Adapt.Presentation.Xivic.Android
Xamarin.Android.Support.v7.Media... {26.1.0.1} Adapt.Presentation.Xivic.Android
Xamarin.Android.Support.v7.Palette {26.1.0.1} Adapt.Presentation.Xivic.Android
Xamarin.Android.Support.v7.Recyc... {26.1.0.1} Adapt.Presentation.Xivic.Android
Xamarin.Android.Support.Vector.D... {26.1.0.1} Adapt.Presentation.Xivic.Android
Xamarin.Build.Download {0.4.7} Adapt.Presentation.Xivic.Android
Xamarin.Forms {2.5.0.280555} Adapt.Presentation.Xivic.Android
Xamarin.Forms.Maps {2.5.0.280555} Adapt.Presentation.Xivic.Android
Xamarin.GooglePlayServices.Base {60.1142.0} Adapt.Presentation.Xivic.Android
Xamarin.GooglePlayServices.Basement {ремреж.резрезрекреи.реж} Adapt.Presentation.Xivic.Android
Xamarin.GooglePlayServices.Maps {60.1142.0} Adapt.Presentation.Xivic.Android
Xamarin.GooglePlayServices.Tasks {60.1142.0} Adapt.Presentation.Xivic.Android
Esri.ArcGISRuntime.Xamarin.Forms {100.2.0} Adapt.Presentation.Xivic.iOS
Esri.ArcGISRuntime.Xamarin.iOS {100.2.0} Adapt.Presentation.Xivic.iOS
Syncfusion.Xamarin.Core {15.4.0.20} Adapt.Presentation.Xivic.iOS
Syncfusion.Xamarin.GridCommon {15.4.0.20} Adapt.Presentation.Xivic.iOS
Syncfusion.Xamarin.SfDataGrid {15.4.0.20} Adapt.Presentation.Xivic.iOS
Syncfusion.Xamarin.SfNumericTextBox {15.4.0.20} Adapt.Presentation.Xivic.iOS
Xamarin.Forms {2.5.0.280555} Adapt.Presentation.Xivic.iOS
Xamarin.Forms.Maps {2.5.0.280555} Adapt.Presentation.Xivic.iOS
Esri.ArcGISRuntime.UWP {100.2.0} Adapt.Presentation.Xivic.UWP
Esri.ArcGISRuntime.Xamarin.Forms {100.2.0} Adapt.Presentation.Xivic.UWP
Microsoft.NETCore.UniversalWindo... {6.0.7} Adapt.Presentation.Xivic.UWP
Syncfusion.Xamarin.SfDataGrid {15.4.0.20} Adapt.Presentation.Xivic.UWP
System.Runtime.Serialization.Pri... {4.3.0} Adapt.Presentation.Xivic.UWP
Xamarin.Forms.Maps {2.5.0.280555} Adapt.Presentation.Xivic.UWP

  • рдкреНрд░рднрд╛рд╡рд┐рдд рдбрд┐рд╡рд╛рдЗрд╕: рдПрдЪрдЯреАрд╕реА рдпреВ11

рдкреНрд░рдЬрдирди рд▓рд┐рдВрдХ

рдорд╛рдВрдЧреЗ рдЬрд╛рдиреЗ рдкрд░ рдЙрдкрд▓рдмреНрдз рдХрд░рд╛рдПрдВрдЧреЗред

backbutton high impact proposal-open enhancement тЮХ

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдмрдврд╝рд╛рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛?
рдореЗрд░реЗ рдкрд╛рд╕ рд╕рд╛рд▓реЛрдВ рд╕реЗ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рд╣реИрдВ, рдЬреЛ рдХрднреА-рдХрднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ,...
рдореЗрд░рд╛ рд╡рд░реНрддрдорд╛рди рд╕рдорд╛рдзрд╛рди рднреА рдиреБрдХрд╕рд╛рди рдХреЗ рд╕рд╛рде рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЦрд░рд╛рдм рд╣реИрдХ рд╣реИ, рдореЗрд░реЗ рдХрд╕реНрдЯрдо рдиреЗрд╡рд┐рдЧреЗрд╢рди рдкреЗрдЬ рд░реЗрдВрдбрд░рд░реНрд╕ рдХреЛ рдЕрдЪреНрдЫреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдХрд╛рд▓рдирд╛ рдФрд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдХреБрдЫ рдореБрджреНрджреЛрдВ рдХреЛ рдареАрдХ рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд▓рдЧреЗрдЧрд╛ред

рд╕рднреА 53 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рд╣рдордиреЗ рдпрд╣рд╛рдВ рднреА рдРрд╕реА рд╣реА рдЪрд░реНрдЪрд╛ рдХреА рдереАред рдХреНрдпрд╛ рдЖрдк рдпрд╣реА рдвреВрдВрдв рд░рд╣реЗ рд╣реИрдВ? https://forums.xamarin.com/discussion/100287/allow-a-single-place-to-handle-back-button-requests-with-async-support

@samhouts рд╣рд╛рдБ, рдпрд╣ рдмрд┐рд▓реНрдХреБрд▓ рд╣рдорд╛рд░рд╛ рдореБрджреНрджрд╛ рд╣реИред рдЙрдкрд░реЛрдХреНрдд рдХреЙрд▓рдмреИрдХ рдХреЛ рдХреЛрдбрдмреЗрд╕ рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдпрд╛ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдмреИрдХ рдмрдЯрди рд╕реЗ рдИрд╡реЗрдВрдЯ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореМрдЬреВрджрд╛ рдкрджреНрдзрддрд┐ рдХреЛ рдмрдврд╝рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

@samhouts рдХреНрдпрд╛ рдпрд╣ рдмрдЧ рдЕрднреА рддрдХ рд╕реНрд╡реАрдХрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ? рдмрдбрд╝рд╛ рдореБрджреНрджрд╛ рд╣реИред рдФрд░ рдХреНрдпрд╛ рдЬрд╛рдирдХрд╛рд░реА рдЪрд╛рд╣рд┐рдП?

рдореИрдВ рдЗрд╕ рдмрд╛рдд рд╕реЗ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ OnBackButtonPressed рдХреЛ рд╣рд╛рд░реНрдб- рдФрд░ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░-рдмреИрдХрдмрдЯрди рджреЛрдиреЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓рдирд╛ рдЪрд╛рд╣рд┐рдПред рдмрд╣рд░рд╣рд╛рд▓, рдЗрди рджреЛрдиреЛрдВ рдХреЛ рдЗрдВрдЯрд░рд╕реЗрдкреНрдЯ рдХрд░рдирд╛ рдЗрддрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реИред рдореИрдВрдиреЗ рдЙрд╕ рд╡рд┐рд╖рдп рдкрд░ рдпрд╣рд╛рдБ рдмреНрд▓реЙрдЧ рдХрд┐рдпрд╛: https://msicc.net/xamarin-forms-the-mvvmlight-toolkit-and-i-takeing-control-over-the-back-buttons/

@MSiccDev рдпрджрд┐ рд╣рдо рдврд╛рдВрдЪреЗ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╕реНрддреБрдд рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рдЖрд╕рдкрд╛рд╕ рдХрд╛рдо рдХрд░рддреЗ рд░рд╣рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдХрднреА рдареАрдХ рдирд╣реАрдВ рд╣реЛрдЧрд╛ рдФрд░ рд▓реЛрдЧреЛрдВ рдХреЛ рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХреА рдХреА рдореГрддреНрдпреБ рддрдХ рдЗрд╕реЗ рдмрд╛рд░-рдмрд╛рд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

@AceCoderLaura рдПрдХ рддрд░рдл рд╕рдЪ рд╣реИред рд╡рд╣реАрдВ рджреВрд╕рд░реА рддрд░рдл рдЖрдЧреЗ рдмрдврд╝рдирд╛ рд╣реИред рд╕рдмрд╕реЗ рдЕрдЪреНрдЫреА рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдХрд╛рдо рдХрд░реЗрдВ рд▓реЗрдХрд┐рди рд╕рдорд╕реНрдпрд╛ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░реЗрдВред

рдпреЗ рд╕рдорд╛рдзрд╛рди рд░реВрдЯ рдкреЗрдЬ рдкрд░ рд╣реИрдордмрд░реНрдЧрд░ рдореЗрдиреВ рдХреЛ рддреЛрдбрд╝рддреЗ рд╣реИрдВ...
-.-

@AceCoderLaura рдореИрдВ рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╕рдорд╕реНрдпрд╛ рдХреЗ рдПрдордбреА-рдкреЗрдЬ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рдРрдкреНрд╕ рдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ ...

@MSiccDev
рдпрд╣рд╛рдБ рдореЗрд░рд╛ рд╣реИрдХреА рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рд╣реИ:

public override bool OnOptionsItemSelected(IMenuItem item) 
{ 
            //If it's not the "home" button continue as usual 
            var androidHomeId = 16908332; 
            if (item.ItemId != Resource.Id.home && item.ItemId != androidHomeId) return base.OnOptionsItemSelected(item); 

            var navigation = App.MainMasterDetailPage.Detail.Navigation; 
            if (navigation.NavigationStack.Count > 1) 
            { 
                //We can go back, do the arrow functionality 
                this.OnBackPressed();
                return true;
            } 
            else 
            { 
                //We're at the root, do the hamburger functionality 
                return App.MainMasterDetailPage.IsPresented = true; 
            } 
}

@AceCoderLaura рдХреНрдпрд╛ рдЖрдкрдХреЗ OnOptionsItemSelected рдиреЗрд╡реА-рдмреИрдХ рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдЯреНрд░рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ oO рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдХреБрдЫ рдирд╣реАрдВ рд╣реБрдЖ ... (рдПрдВрдбреНрд░реЙрдЗрдб)

рдХреНрдпрд╛ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдХреЛрдИ рдкреНрд░рдЧрддрд┐ рд╣реБрдИ рд╣реИ? рдореЗрд░реЗ рдкрд╛рд╕ рдХрдИ рдиреЗрд╕реНрдЯреЗрдб рдиреЗрд╡рд┐рдЧреЗрд╢рдирд╡реНрдпреВ рд╣реИрдВ рдФрд░ рдпрд╣ рдореЗрд░реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдЗрд╕реЗ рдкреИрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд▓реНрдЯреНрд░рд╛ рд╣реИрдХреА рд╣реЛрдЧрд╛ред рдореИрдВ @AceCoderLaura рд╕реЗ

рд╕рдорд╛рди рд╕рдорд╕реНрдпрд╛ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдВрдЯрд░рдкреНрд░рд╛рдЗрдЬрд╝ рдРрдк рдореЗрдВ рдмреИрдХ рдЗрд╡реЗрдВрдЯ рдХреЛ рд╕рдВрднрд╛рд▓рдирд╛ рдХрд╛рдлреА рдЖрдо рд╣реИред рдЗрд╕реЗ рдЬрд▓реНрдж рд╕реЗ рдЬрд▓реНрдж рдареАрдХ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдХреГрдкрдпрд╛ рдЗрд╕реЗ рдареАрдХ рдХрд░реЗрдВ, рдпрд╣ рд▓рдЧрднрдЧ рдПрдХ рд╡рд░реНрд╖ рдХреЗ рд▓рд┐рдП рд░рд┐рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдЕрднреА рддрдХ рдирд╣реАрдВ рд╣реЛрдирд╛ рд╣рд╛рд╕реНрдпрд╛рд╕реНрдкрдж рд╣реИред

@ddobrev рдЖрдк рд╕рд╣реА рдХрд╣ рд░рд╣реЗ рд╣реИрдВ рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╣реА рдЙрдкрдпреЛрдЧреА рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдЗрд╕реЗ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдХрд┐рд╕реА рдиреЗ рдЗрд╕рдХреЗ рдКрдкрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдЙрд╕реЗ рдХреЛрдИ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдирд╣реАрдВ рдорд┐рд▓реА:

рд╣рд╛рдБ, рдпрд╣ рдХрд╛рдлреА рд╣рдж рддрдХ рд╣рдорд╛рд░рд╛ рдореБрджреНрджрд╛ рд╣реИред рдЙрдкрд░реЛрдХреНрдд рдХреЙрд▓рдмреИрдХ рдХреЛ рдХреЛрдбрдмреЗрд╕ рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдпрд╛ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдмреИрдХ рдмрдЯрди рд╕реЗ рдИрд╡реЗрдВрдЯ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореМрдЬреВрджрд╛ рдкрджреНрдзрддрд┐ рдХреЛ рдмрдврд╝рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдЕрдЧрд░ рдЗрд╕реЗ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛрддрд╛, рддреЛ рдореИрдВ рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреАрдЖрд░ рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ред

рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХреНрдпреЛрдВ, рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ (рдПрдВрдбреНрд░реЙрдЗрдб рдкрд░) рдЗрд╕реЗ рдореЗрд░реА рдореБрдЦреНрдп рдЧрддрд┐рд╡рд┐рдзрд┐ рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдерд╛

        protected override void OnPostCreate(Bundle savedInstanceState)
        {
            var toolBar = FindViewById<global::Android.Support.V7.Widget.Toolbar>(Resource.Id.toolbar);
            SetSupportActionBar(toolBar);

            base.OnPostCreate(savedInstanceState);
        }

рдЗрд╕рдХреЗ рд╕рд╛рде рдСрдирдмреИрдХ рдмрдЯрди рджрдмрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рднрд▓реЗ рд╣реА рдореИрдВ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдмреИрдХ рдмрдЯрди рдФрд░ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдмрд╛рд░ рдкрд░ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдмреИрдХ рдмрдЯрди рджрдмрд╛рддрд╛ рд╣реВрдВред рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд╕рдордЭ рдирд╣реАрдВ рдЖрддрд╛ рдХреНрдпреЛрдВред

IOS рдкрд░ рдореИрдВрдиреЗ рдЕрднреА рднреА рдЗрд╕реЗ рдПрдХ рдХрд╕реНрдЯрдо рдкреЗрдЬ рд░реЗрдВрдбрд░рд░ рдХреЗ рд╕рд╛рде рдЦреБрдж рдЬреЛрдбрд╝рд╛ рдерд╛ред

рддреЛ, рдХреНрдпрд╛ рдпрд╣ 3.6.0 рдореЗрдВ рддрдп рд╣реЛрдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реИ?

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдЧрд▓рддреА рд╕реЗ рдкреНрд░рдЧрддрд┐ рдкрд░ рд▓реЗ рдЬрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред

@samhouts рддреЛ рдЗрд╕реЗ рдЕрдм рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ? рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИ?

@ddobrev рд╣рдореЗрдВ рдЕрднреА рднреА рд▓реЛрдЧреЛрдВ рдХреЛ рдЬреЛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЙрд╕рдХрд╛ рдкрд░реНрджрд╛рдлрд╛рд╢ рдХрд░рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рд╣реИред рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдСрдирдмреИрдХрдмрдЯрди рдиреЗ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдмреИрдХ рдмрдЯрди рдкрд░ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдорд╛рдирдЪрд┐рддреНрд░реЛрдВ рдХреЛ рджрдмрд╛рдпрд╛ рддрд╛рдХрд┐ рдЗрд╕рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рдЗрд╕рдХреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рдШреВрдорддреА рд░рд╣реЗред рд▓реЛрдЧ рдЬреЛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рд╡рд╣ рдПрдХ рдСрдирдиреЗрд╡рд┐рдЧреЗрдЯрд┐рдВрдЧрдмреИрдХ рд╕реБрд╡рд┐рдзрд╛ рд╣реИред

рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдХреЛ рдЙрд╕ рд╡рд┐рдзрд┐ рдореЗрдВ рд╡рд╛рдкрд╕ рддреАрд░ рдмрд╛рдВрдзрдирд╛ рдЕрднреА рднреА рдПрдХ рд╣реИрдХ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдмрд╕ рдСрдирдмреИрдХрдмрдЯрди рджрдмрд╛рдП рдЧрдП рдФрд░ рдмрдирд╛рдирд╛

рдСрдирд╣рд╛рд░реНрдбрд╡реЗрдпрд░рдмреИрдХрдмрдЯрди рджрдмрд╛рдпрд╛ рдФрд░ рдСрдирдиреЗрд╡рд┐рдЧреЗрдЯрд┐рдВрдЧрдмреИрдХ

рдЦреИрд░, рдХреЛрдИ рднреА рд░рд╛рд╕реНрддрд╛ рдареАрдХ рд╣реИред рдмрд╕ рдХрд░ рджреЛред рдХрд╛рдлреА рд╕рдордп рд╣реЛ рдЧрдпрд╛ рд╣реИред

рдкреЗрдЬ рдлреАрдЪрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдХреНрдпрд╛ рдРрд╕рд╛ рдХреБрдЫ рд╕рдордЭ рдореЗрдВ рдЖрдПрдЧрд╛? рдпрд╣ рдмреЗрд╣рдж рдорджрджрдЧрд╛рд░ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рд╣рдо рд░рд┐рд╡рд░реНрд╕ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдХреЛ рджреЗрдЦрдиреЗ рдФрд░ рд░рджреНрдж рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдереЗ (рдЗрд╕рд▓рд┐рдП рдЯрд╛рд╕реНрдХ\

enum ReverseNavigationSourceType {
    Unspecified,
    HwButton,
    Navbar,
    Gesture
}

class ReverseNavigationEventArgs {
    public ReverseNavigationSourceType SourceType { get; }
    public object Source { get; }
}

class Page {
    public virtual Task<bool> OnNavigatingBack(ReverseNavigationEventArgs args) {
        return Task.FromResult(true);
    }
}

рджреВрд╕рд░рд╛ рд╡реНрдпрд╡рд╣рд╛рд░реНрдп рд╡рд┐рдХрд▓реНрдк рдЬреЛ рдореИрдВ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реВрдВ рд╡рд╣ рдЗрд╕реЗ INavigation рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реИред

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдПрдкреАрдЖрдИ рдХреЛ рдереЛрдбрд╝рд╛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░реЗрдВ

@pikausp рд╕рдорд╛рдзрд╛рди рдореБрдЭреЗ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИ

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдФрд░ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХрд░рдирд╛ рдФрд░ "рдкреГрд╖реНрда рд╕реНрдерд┐рддрд┐" рдЬреИрд╕рд╛ рдХреБрдЫ рдкреЗрд╢ рдХрд░рдирд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред

рдкреГрд╖реНрда рд╕рдХреНрд░рд┐рдп рдпрд╛ рдирд┐рд╖реНрдХреНрд░рд┐рдп рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

class PageActivationEventArgs { }
class PageDeactivationEventArgs {
    public bool IsPermanent { get; }
}
class Page {
    public virtual Task OnActivating(PageActivationEventArgs) {
        return Task.CompletedTask;
    }

    public virtual Task<bool> OnDeactivating(PageDeactivationEventArgs) {
        return Task.FromResult(true);
    }
}

рдЬрдм рдкреГрд╖реНрда рдХреЛ OnDeactivating рд╕реЗ рджреВрд░ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдЙрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред IsPermanent рдХрд╛ рдорд╛рди рдЗрд╕ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ рдХрд┐ рдкреЗрдЬ рдХреЛ рдиреЗрд╡рд┐рдЧреЗрд╢рди рд╕реНрдЯреИрдХ рдореЗрдВ рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВ (рдкреЙрдк рдХреЗ рд▓рд┐рдП рд╕рд╣реА, рдкреБрд╢ рдХреЗ рд▓рд┐рдП рдЧрд▓рдд)ред

рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ OnActivated рдФрд░ OnDeactivated рдкрд░рд┐рдЪрдп рджреЗрдВ рдЬреЛ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реИрдВред

рдпрд╣ рдбреЗрд╡рд▓рдкрд░ рдХреЛ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдлреНрд▓реЛ рдкрд░ рд╢рд╛рдирджрд╛рд░ рдкрд╛рд╡рд░ рджреЗрддрд╛ рд╣реИред

рдЖрдкрдХреЗ рдХреНрдпрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИрдВ?

рдХреНрдпрд╛ рдЖрдк рдпрд╣рд╛рдВ рдХрд┐рд╕реА рдкреНрд░рдЧрддрд┐ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗ, рдХреГрдкрдпрд╛?

рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдмрдврд╝рд╛рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛?
рдореЗрд░реЗ рдкрд╛рд╕ рд╕рд╛рд▓реЛрдВ рд╕реЗ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рд╣реИрдВ, рдЬреЛ рдХрднреА-рдХрднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ,...
рдореЗрд░рд╛ рд╡рд░реНрддрдорд╛рди рд╕рдорд╛рдзрд╛рди рднреА рдиреБрдХрд╕рд╛рди рдХреЗ рд╕рд╛рде рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЦрд░рд╛рдм рд╣реИрдХ рд╣реИ, рдореЗрд░реЗ рдХрд╕реНрдЯрдо рдиреЗрд╡рд┐рдЧреЗрд╢рди рдкреЗрдЬ рд░реЗрдВрдбрд░рд░реНрд╕ рдХреЛ рдЕрдЪреНрдЫреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдХрд╛рд▓рдирд╛ рдФрд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдХреБрдЫ рдореБрджреНрджреЛрдВ рдХреЛ рдареАрдХ рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд▓рдЧреЗрдЧрд╛ред

рдЯрдХреНрдХрд░

рд╕реЙрдлреНрдЯ рдмреИрдХ рдмрдЯрди рдХреЛ рдЗрдВрдЯрд░рд╕реЗрдкреНрдЯ рдХрд░рдиреЗ рдкрд░ рдХреЛрдИ рдЕрдкрдбреЗрдЯред рд╣рдо рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рдкрд░ рд╕рдВрдШрд░реНрд╖ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдЗрд╕ рдкреЛрд╕реНрдЯ рдореЗрдВ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдЗрд╕ рддрд░рд╣ рдХреА рд╕реНрдкрд╖реНрдЯ рдЪреВрдХ рдХреЗ рд▓рд┐рдП рдпрд╛ рддреЛ рдЕрдкрдиреЗ рдЯреВрд▓рдмрд╛рд░ рдХреЛ рд╣реИрдХ рдХрд░рдирд╛ рдпрд╛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдереЛрдбрд╝рд╛ рдЕрдзрд┐рдХ рд╣реИред рдХреГрдкрдпрд╛ ...

рдпрд╣рд╛рдВ рдХреЛрдИ рдЕрдкрдбреЗрдЯ @samhouts ?
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣рд╛рдВ рдХрдИ рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рд╕рдорд╛рдзрд╛рди рд╕реБрдЭрд╛рдП рдЧрдП рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рд╕рднреА рд╣рдореЗрдВ рд╡рд╣ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рджреЗрдВрдЧреЗ рдЬрд┐рд╕рдХреА рд╣рдо рддрд▓рд╛рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рднреА рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░реЗрдВрдЧреЗред

рдбреЗрдЯрд╛ рд╣рд╛рдирд┐ рдХреЛ рд░реЛрдХрдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░рддреНрдпреЗрдХ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдореБрдЭреЗ рдЗрд╕рдХреА рднреА рдЬрд╝рд░реВрд░рдд рд╣реИ, рд╣рд░ рдХрд╛рдордХрд╛рдЬ рдмрд╣реБрдд рд╣реИрдХреА рд╣реИред

рдареАрдХ рд╣реИ, рдЯреАрдо, рдЕрдм рд╣рдо рдпрд╣рд╛рдВ рд╡рд░реНрдгрд┐рдд рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреА рдУрд░ рдЭреБрдХ рд░рд╣реЗ рд╣реИрдВ: https://github.com/xamarin/Xamarin.Forms/issues/6971#issuecomment -574823028

рдХреЛрдИ рдПрддрд░рд╛рдЬ?

@samhouts рдореИрдВрдиреЗ рд▓рд┐рдВрдХ рдХрд┐рдП рдЧрдП рдореБрджреНрджреЗ рдкрд░ рдПрдХ рддреНрд╡рд░рд┐рдд рдирдЬрд╝рд░ BackButtonBehavior рдПрдХ рдХрдорд╛рдВрдб рдХреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рд╕рд┐рд░реНрдл рдПрдХ рд░реИрдкрд░ (рдХреБрдЫ рдЕрддрд┐рд░рд┐рдХреНрдд рдХреЗ рд╕рд╛рде) рд╣реИ рдЬреЛ рддрдм рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рдХреЛрдИ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╡рд╛рдкрд╕ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИ?

рдореВрд▓ рд░реВрдк рд╕реЗ, рдпрд╣ рд░рд┐рд╡рд░реНрд╕ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдХреЛ рдЗрдВрдЯрд░рд╕реЗрдкреНрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ рдпрд╣ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдХреЛрдИ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЙрдкрд▓рдмреНрдз рдХрд┐рд╕реА рднреА рд╡рд┐рдзрд┐ (рд╕реНрд╡рд╛рдЗрдк, рдиреЗрд╡рдмрд╛рд░ рдмрдЯрди, рдПрдВрдбреНрд░реЙрдЗрдб рдмрдЯрди, ..) рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╡рд╛рдкрд╕ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдореИрдВ рдРрд╕рд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддрд╛ рд╣реВрдВ рддреЛ рдореИрдВ рд╡рд╛рдкрд╕ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдПрдХ рдирдП рдкреГрд╖реНрда рдкрд░ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗ рд╕рдХрддрд╛ рд╣реВрдВ, рдХреНрдпрд╛ рдпрд╣ рд╕рд╣реА рд╣реИ?

@samhouts рдореЗрд░реЗ рдкрд╛рд╕ рдЖрдИрдУрдПрд╕ рдпреВрдбрдмреНрд▓реНрдпреВрдкреА рдФрд░ рдПрдВрдбреНрд░реЙрдЗрдб рдХреЗ рд▓рд┐рдП рдореЗрд░реЗ рдЙрддреНрдкрд╛рджрди рдРрдк рдореЗрдВ рдПрдХ рдХрд╛рдордХрд╛рдЬреА рдЕрд╡рд░реЛрдз рд╣реИред рдЖрдИрдУрдПрд╕ рдФрд░ рдПрдВрдбреНрд░реЙрдЗрдб рдХрд╕реНрдЯрдо рдкреЗрдЬ рд░реЗрдВрдбрд░рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдЬрдм рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдпрд╛ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдмреИрдХ-рдмрдЯрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╡рд╛рдкрд╕ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рддрд╛ рд╣реИ рддреЛ рдореИрдВ рдкреЙрдк-рдЕрдк рджрд┐рдЦрд╛ рд╕рдХрддрд╛ рд╣реВрдВ "рдкрд░рд┐рд╡рд░реНрддрди рддреНрдпрд╛рдЧреЗрдВ?"ред рдЬрдм рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рдВрдХреЗрдд рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдкрд┐рдЫрд▓рд╛ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдкреГрд╖реНрда рдкреЙрдк рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрдиреНрдпрдерд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╡рд░реНрддрдорд╛рди рдкреГрд╖реНрда рдкрд░ рд░рд╣рддрд╛ рд╣реИред рдореИрдВрдиреЗ рдЕрднреА рддрдХ рдпрд╣ рдирд╣реАрдВ рдорд╛рдирд╛ рд╣реИ рдХрд┐ рд╡рд╛рдкрд╕ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рд╛рдЗрдк рдХрд░рдирд╛ рднреА рд╕рдВрднрд╡ рд╣реИ, рдЬреЛ рдореЗрд░реЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ рдЧреБрдо рд╣реИ

@samhouts - рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреИрд╕реЗ рдкреНрд░рд╕реНрддрд╛рд╡ рдПрдХ рд╕рд╢рд░реНрдд рдХрджрдо рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдмреИрдХ рдмрдЯрди рдХреЗ рдЕрд╡рд░реЛрдзрди рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рдХреНрдпрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдЗрд╕ рддрд░рд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ?

  • рдпрджрд┐ {рд╢реИрд▓, рдиреЗрд╡рд┐рдПрд╢рдирдкреЗрдЬ}ред рдмреИрдХрдмрдЯрди рдХрдорд╛рдВрдб рдЕрд╕рд╛рдЗрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдмреИрдХ рдмрдЯрди рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдмреИрдХ рдиреЗрд╡рд┐рдЧреЗрд╢рди рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╣реЛрддрд╛ рд╣реИред
  • рдпрджрд┐ {Shell, NaviationPage}.BackButtonCommand рдЕрд╕рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдХреЛрдИ рднреА рдмреИрдХ рдиреЗрд╡рд┐рдЧреЗрд╢рди рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдЖрдк рд╢реЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдпрд╛ рдирд╣реАрдВ, рдЗрд╕ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреЗ рд╣реБрдП рдЕрд╕рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ ICommand рдЗрдВрд╕реНрдЯреЗрдВрд╕ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдРрд╕рд╛ рдХреБрдЫ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

c# async Task MyProcessBackButton(bool usingShell) { bool navigateBack = await DisplayAlert("Cancel?", "Undo changes", "Yes", "No"); var mainPage = usingShell ? (Page)Shell.Current : Application.Current.MainPage; if (mainPage is MasterDetailPage mdPage) mainPage = mdPage.Detail; if (navigateBack) await mainPage.Navigation.PopAsync(); }

рдРрд╕рд╛ рдХреБрдЫ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рд▓реЗрдХрд┐рди рдпрд╣ рдмреЛрдЭрд┐рд▓ рд▓рдЧрддрд╛ рд╣реИред рд╢рд╛рдпрдж рдореИрдВ рдкреНрд░рд╕реНрддрд╛рд╡ рдХреЛ рдареАрдХ рд╕реЗ рдирд╣реАрдВ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдБред рдпрд╣ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рд▓рд┐рдЦреЗ рдЧрдП рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ред

рдкреАрдПрд╕ рд▓рд╛рдЗрдХ @nschoenberg , рдореБрдЭреЗ рдЕрдкрдиреЗ рдРрдкреНрд╕ рдореЗрдВ рдХрд╕реНрдЯрдо

  • рдпрджрд┐ {рд╢реИрд▓, рдиреЗрд╡рд┐рдПрд╢рдирдкреЗрдЬ}ред рдмреИрдХрдмрдЯрди рдХрдорд╛рдВрдб рдЕрд╕рд╛рдЗрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдмреИрдХ рдмрдЯрди рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдмреИрдХ рдиреЗрд╡рд┐рдЧреЗрд╢рди рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╣реЛрддрд╛ рд╣реИред

рдЗрд╕ рддрд░рд╣ рдореИрдВ рдЗрд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░рддрд╛ рд╣реВрдВ, рдЕрдХреНрд╕рд░ рд╣рдо рдУрд╡рд░рд░рд╛рдЗрдб рдирд╣реАрдВ рд╣реЛрдиреЗ рдкрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдпрд╣ рдПрдВрдбреНрд░реЙрдЗрдб рдкрд░ рдбрд┐рд╡рд╛рдЗрд╕ рдмреИрдХ рдмрдЯрди рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдФрд░ рд╕рд╣реА рд▓реМрдЯрдиреЗ рдЬреИрд╕рд╛ рд╣реА рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░реЗрдЧрд╛ред рдХреНрдпрд╛ рдХрд┐рд╕реА рддрд░рд╣ рд╕реЗ рдЙрд╕ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рджреЛрд╣рд░рд╛рдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ?

рдкреЗрдЬ рдлреАрдЪрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдХреНрдпрд╛ рдРрд╕рд╛ рдХреБрдЫ рд╕рдордЭ рдореЗрдВ рдЖрдПрдЧрд╛? рдпрд╣ рдмреЗрд╣рдж рдорджрджрдЧрд╛рд░ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рд╣рдо рд░рд┐рд╡рд░реНрд╕ рдиреЗрд╡рд┐рдЧреЗрд╢рди (рдЗрд╕рд▓рд┐рдП рдЯрд╛рд╕реНрдХ .) рдХреЛ рджреЗрдЦрдиреЗ рдФрд░ рд░рджреНрдж рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдереЗ) рд╕рд╛рде рд╣реА, рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рдЖрд╕рд╛рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЕрдиреБрд░реЛрдз рдХреЛ рд╡рд╛рдкрд╕ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рдХрд╛ рдХреНрдпрд╛ рдХрд╛рд░рдг рд╣реИред

enum ReverseNavigationSourceType {
    Unspecified,
    HwButton,
    Navbar,
    Gesture
}

class ReverseNavigationEventArgs {
    public ReverseNavigationSourceType SourceType { get; }
    public object Source { get; }
}

class Page {
    public virtual Task<bool> OnNavigatingBack(ReverseNavigationEventArgs args) {
        return Task.FromResult(true);
    }
}

рджреВрд╕рд░рд╛ рд╡реНрдпрд╡рд╣рд╛рд░реНрдп рд╡рд┐рдХрд▓реНрдк рдЬреЛ рдореИрдВ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реВрдВ рд╡рд╣ рдЗрд╕реЗ INavigation рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реИред

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдПрдкреАрдЖрдИ рдХреЛ рдереЛрдбрд╝рд╛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░реЗрдВ

рдореБрджреНрджреЗ рдореЗрдВ https://github.com/xamarin/Xamarin.Forms/issues/6971#issuecomment -574823028, рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ BackButtonCommand рдХрд╣рд╛рдВ рдЙрдЬрд╛рдЧрд░ рд╣реЛрдЧрд╛, рдХреЗрд╡рд▓ рдиреЗрд╡рд┐рдЧреЗрд╢рдирдкреЗрдЬ рдкрд░ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ? рдХреНрдпрд╛ рдПрдХ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдкреЗрдЬ рдкрд░ рдПрдХ рд╣реА рдЗрдореНрдкреНрд▓реАрдореЗрдВрдЯреЗрд╢рди рд╣реИ рдФрд░ рдЙрд╕ рдиреЗрд╡рд┐рдЧреЗрд╢рди рд╕реНрдЯреИрдХ рдкрд░ рдкреБрд╢ рдХрд┐рдП рдЧрдП рд╕рднреА рдкреЗрдЬ рдПрдХ рд╣реА рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ? (рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдЙрдкрдпреЛрдЧ рдХрд╛ рдорд╛рдорд▓рд╛ рд╣реЛрдЧрд╛)ред рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкреГрд╖реНрда рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдУрд╡рд░рд░рд╛рдЗрдб рдХреЛ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЖрджреЗрд╢ рдХрд╛ рд▓рд╛рдн рдЙрдард╛рддреЗ рд╣реИрдВ?

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдКрдкрд░ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдкреНрд░рддрд┐ рдкреГрд╖реНрда рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЛ рдкреВрд░рд╛ рдХрд░реЗрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдмреИрдХ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдХрд╛ рдЖрд╣реНрд╡рд╛рди рдХреБрдЫ рдЕрдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИ рдЬреЛ рдЕрдХреНрд╕рд░ рджреЗрд╡ рдмреИрдХ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдкрд░ рдЬреЛ рд╣реЛрддрд╛ рд╣реИ рдЙрд╕реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ рдпрд╛рдиреА рдЙрдиреНрд╣реЗрдВ рднреЗрдЬрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдХреБрдЫ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рдВрд╡рд╛рдж рдХреЛ рд╕рдВрдХреЗрдд рджреЗрдВ рдХреЛрдИ рдЕрдиреНрдп рдкреГрд╖реНрда рдпрд╛ рдмрд╕ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЫреЛрдбрд╝ рджреЗрдВред

рдореИрдВ рд╕рднреА рдХреЗ рд▓рд┐рдП рдмрд╛рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛, рд▓реЗрдХрд┐рди рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдРрд╕реЗ рдЙрджрд╛рд╣рд░рдг рд╣реИрдВ рдЬрд╣рд╛рдВ рд╣рдордиреЗ рдХреБрдЫ рдлрд╝рдВрдХреНрд╢рди рд▓рд╛рдЧреВ рдХрд┐рдП рд╣реИрдВ рдЬреЛ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдмрдЯрди рджрдмрд╛рдП рдЬрд╛рдиреЗ рдкрд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ, рд╣рдо OnBackButtonPressed рднреА рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рд╕рдорд╛рди рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИред рдПрдХ рд╣реА рдХреЛрдб рдХреЛ рдХреНрд░рд┐рдпрд╛рдиреНрд╡рд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдмреИрдХ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдХреЗ рджреЛ рд░реВрдкред

рдпреЗ рд╕рднреА рдЧреБрдг рдиреЗрд╡рд┐рдЧреЗрд╢рдирдкреЗрдЬ рдкрд░ рд╕рдВрд▓рдЧреНрди рдХрд┐рд╕реА рднреА рдЧреБрдг рдХреЗ рд╕рдорд╛рди рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ

https://github.com/xamarin/Xamarin.Forms/blob/master/Xamarin.Forms.Core/NavigationPage.cs#L19

рдЖрдк рдЙрдиреНрд╣реЗрдВ рдХреЗрд╡рд▓ рд╕рдХреНрд░рд┐рдп рдкреГрд╖реНрда рдкрд░ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдкреЗрдЬ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд░рддрд╛ рд╣реИред рд╕рдВрд▓рдЧреНрди рдЧреБрдг рдЕрдЪреНрдЫреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдмрд╛рдЗрдВрдб рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реИрдВ рдЗрд╕рд▓рд┐рдП рдЖрдк рдЗрд╕реЗ рдХреЗрд╡рд▓ рдПрдХ рдкреГрд╖реНрда рдкрд░ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ VM рдореЗрдВ рдмрд╛рдБрдз рд╕рдХрддреЗ рд╣реИрдВред

<ContentPage NavigationPage.BackButtonCommand={Bindiing BackCommand}

рдХрдорд╛рдВрдб рдХреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ "рдЕрдХреНрд╖рдо" рдХрд░рдиреЗ рдХреЗ рд▓рд╛рднреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдПрд╕рд┐рдВрдХреНрд╕ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдмрдирд╛рддрд╛ рд╣реИред рдХреНрдпреЛрдВрдХрд┐ рдЕрдм рдмрдЯрди рд╕рд┐рд░реНрдл рдХрдорд╛рдВрдб рдХреЗ рд▓рд┐рдП рд░реВрдЯ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХрдорд╛рдВрдб рдЬрдм рддрдХ рдЪрд╛рд╣реЗ рддрдм рддрдХ рдХреБрдЫ рднреА рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рдЕрдЧрд░ рд╡рд╣ рдЪрд╛рд╣реЗ рддреЛ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдиреЗрд╡рд┐рдЧреЗрд╢рди рдПрдкрд┐рд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рдпрд╣ рд╕рдм рдПрд╕рд┐рдВрдХреНрд╕ рдмрдирд╛рдирд╛ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХреЗ рдХрд╛рд░рдг рд╡рд╛рдкрд╕ рд╕реНрд╡рд╛рдЗрдк рдХрд░рдирд╛ рдпрд╛ рдореЛрдбрд▓ рдкрд░ рдЦрд╛рд░рд┐рдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рд╛рдЗрдк рдХрд░рдирд╛ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдореВрд▓ рд░реВрдк рд╕реЗ "рдПрд╕рд┐рдВрдХ" рдирд╣реАрдВ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдпрд╣рд╛рдВ рдХреНрдпрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрди рдЗрд╢рд╛рд░реЛрдВ рдореЗрдВ рдЯреИрдк рдХрд░реЗрдВ, рдХрдорд╛рдВрдб рдХреЗ рд▓рд┐рдП рдорд╛рд░реНрдЧ, рдФрд░ рд░рджреНрдж рдХрд░реЗрдВ рд╣рд╛рд╡ - рднрд╛рд╡ред

рд╣рдо рдЗрд╕реЗ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдХреНрд▓рд╛рд╕ рдкрд░ рдПрдХ рдИрд╡реЗрдВрдЯ рднреА рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдкрджрд╛рдиреБрдХреНрд░рдорд┐рдд рдкреНрд░реЙрдХреНрд╕реА рддрдХ рд╕рднреА рддрд░рд╣ рд╕реЗ рдЖрдЧ рд▓рдЧрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рдПрдХ рдИрд╡реЗрдВрдЯ рдХреЗ рд╕рд╛рде рдЖрдк EventToCommand рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдореБрдЭреЗ рдпрд╣ рднреА рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдиреЗрд╡рд┐рдЧреЗрдЯрд┐рдВрдЧрдмреИрдХ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВред рдЕрдЧрд░ рд╣рдо рдРрд╕рд╛ рдХреБрдЫ рдХрд░рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ рддреЛ рд╢реЗрд▓ рдХреЗ рд╕рдорд╛рди рд╣реА рдПрдХ рдиреЗрд╡рд┐рдЧреЗрдЯрд┐рдВрдЧ рдЗрд╡реЗрдВрдЯ рднреА рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИред

рдореБрдЭреЗ рдПрд╣рд╕рд╛рд╕ рд╣реИ рдХрд┐ рдпрд╣ рдереЛрдбрд╝рд╛ рдЬреБрдЖ рд╣реИ :-) рд▓реЗрдХрд┐рди рд╕рд┐рд░реНрдл рдХреБрдЫ рд╕рд╡рд╛рд▓реЛрдВ рдХрд╛ рдЬрд╡рд╛рдм рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдФрд░ рдХреБрдЫ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдЪрд░реНрдЪрд╛ рдХреЗ рд▓рд┐рдП рдиреАрдЪреЗ рд▓рд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛

рдЖрдк рдЙрдиреНрд╣реЗрдВ рдХреЗрд╡рд▓ рд╕рдХреНрд░рд┐рдп рдкреГрд╖реНрда рдкрд░ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдкреЗрдЬ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд░рддрд╛ рд╣реИред рд╕рдВрд▓рдЧреНрди рдЧреБрдг рдЕрдЪреНрдЫреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдмрд╛рдЗрдВрдб рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реИрдВ рдЗрд╕рд▓рд┐рдП рдЖрдк рдЗрд╕реЗ рдХреЗрд╡рд▓ рдПрдХ рдкреГрд╖реНрда рдкрд░ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ VM рдореЗрдВ рдмрд╛рдБрдз рд╕рдХрддреЗ рд╣реИрдВред

<ContentPage NavigationPage.BackButtonCommand={Bindiing BackCommand}

@PureWeen рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдЙрд╕ рддрд░рд╣ рдХреЗ рдкреГрд╖реНрдареЛрдВ рдкрд░ рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рддрдХ рдкрд╣реБрдВрдЪрдирд╛ рд╕рдВрднрд╡ рдерд╛ рдФрд░ рд╡реИрд╕реЗ рднреА рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХрд░рдирд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред

рдХреНрдпрд╛ рдиреЗрд╡рд┐рдЧреЗрд╢рдирдкреЗрдЬ.рдмреИрдХрдмрдЯрди рдХрдорд╛рдВрдб рдбрд┐рд╡рд╛рдЗрд╕ рдмреИрдХ рдмрдЯрди рдХрд╛ рднреА рдЙрдкрднреЛрдЧ рдХрд░реЗрдЧрд╛ рдпрд╛ рд╕рд┐рд░реНрдл рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдмреИрдХ рдмрдЯрди? рдЪреВрдВрдХрд┐ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдХреЛ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХреЗ рдЕрдиреНрдп рддрд░реАрдХреЗ рд╣реИрдВред

рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдореИрдВ рдиреЗрд╡рд┐рдЧреЗрд╢рдирдкреЗрдЬ рд╕реЛрдЪ рд░рд╣рд╛ рд╣реВрдВред рдмреИрдХрдмрдЯрди

рдкреЙрдк/рдкреБрд╢ рд╕реЗ рдЬреБрдбрд╝реА рдХреЛрдИ рдЪреАрдЬ рд╕рдордЭ рдореЗрдВ рдЖ рд╕рдХрддреА рд╣реИ рдФрд░ рдореМрдЬреВрджрд╛ рдПрдкрд┐рд╕ рд╕реЗ рдореЗрд▓ рдЦрд╛ рд╕рдХрддреА рд╣реИ

рдпреЗ рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ рдмрд▓реНрдХрд┐ рдЗрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХреБрдЫ рд╣реИ

UserRequestedPoppingCommand
UserRequestedPushingCommand

рдпрд╛ рд╕рдВрднрд╡рддрдГ рдкреЙрдкрд┐рдВрдЧ рдХрдорд╛рдВрдб рдФрд░ рдкреБрд╢рд┐рдВрдЧ рдХрдорд╛рдВрдб рдФрд░ рдлрд┐рд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЖрдкрдХреЗ рддрд░реНрдХреЛрдВ рдХреЗ рд╕рдорд╛рди рдХреБрдЫ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рд╕рдВрджрд░реНрдн рджреЗрддреЗ рд╣реИрдВред

C# enum NavigationSourceType { Unspecified, HwButton, Navbar, Gesture, FromCode }

рдореИрдВ рдЗрд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдмрд╛рдЗрдВрдб рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдЕрднреА рддрдХ рдПрдХ рдРрд╕реЗ рд╡рд┐рдЪрд╛рд░ рдкрд░ рдХреНрд▓рд┐рдХ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдореИрдВ рд╕реБрдкрд░ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВред

рд╢рд╛рдпрдж рдиреЗрд╡рд┐рдЧреЗрд╢рди рдкрд░ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬреЛ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдХреА рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ?
рддреЛ рдЕрдЧрд░ рдпрд╣ рдЖрджреЗрд╢ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдЖрдк рдиреЗрд╡рд┐рдЧреЗрд╢рди рд╕реЗ рдкреВрдЫ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдПрдХ рдЗрд╢рд╛рд░рд╛ рдкреНрд░рдЧрддрд┐ рдкрд░ рд╣реИ рдпрд╛ рдЕрдиреНрдп

рдЗрд╕ рдкрд░ рдХрд┐рд╕реА рднреА рдЕрджреНрдпрддрди? рд╣рдо рдЗрд╕ рдкрд░ рдПрдХ рд╕рд╛рд▓ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рд╕реЗ рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдЗрд╕ рдкрд░ рдХрд┐рд╕реА рднреА рдЕрджреНрдпрддрди? рд╣рдо рдЗрд╕ рдкрд░ рдПрдХ рд╕рд╛рд▓ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рд╕реЗ рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдЖрд░рд╛рдо рдХрд░рдирд╛ред рдПрдХ рд╕рд╛рд▓ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реИред рдЖрдИрдкреИрдб рдкрд░ рдорд╛рд╕реНрдЯрд░рдбрд┐рдЯреЗрд▓ рдХреЗ рд╕рд╛рде рд╕реНрдкреНрд▓рд┐рдЯ рд╡реНрдпреВ 4 рд╕рд╛рд▓ рдкрд╣рд▓реЗ рд░рд┐рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдХрд┐ рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЦрд░рд╛рдм рд╣реИред рдЗрд╕ рд╕рдордп, Xamarin.Forms рдЕрднреА рднреА Bugzilla рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рдерд╛ред

@SebastianKruseWago рдпрд╣ рдЕрдкреЗрдХреНрд╖рд┐рдд рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдПрдХ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рдкрд░рд┐рджреГрд╢реНрдп рд╣реИ рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдЕрд▓рдЧ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдореМрдЬреВрдж рд╣реИред рдЙрдиреНрд╣реЛрдВрдиреЗ рдПрдХ "рдмрдЧ" рднреА рддрдп рдХрд┐рдпрд╛ рдЬрд┐рд╕рдиреЗ рдЖрд╕рдкрд╛рд╕ рдХреЗ рдХрд╛рдо рдХреА рдЕрдиреБрдорддрд┐ рджреАред рддреЛ рдПрдХ рд╕рд╛рд▓ рдмрд╣реБрдд рдХреБрдЫ рд╣реИ, рдЬрд┐рд╕реЗ рдкрд╣рд▓реЗ рджрд┐рди рд╕реЗ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

@akemper1 рд╕реНрдкреНрд▓рд┐рдЯ рд╡реНрдпреВ рдХреЛ рднреА рдкрд╣рд▓реЗ рджрд┐рди рд╕реЗ рд╣реА рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рднреА рдПрдХ рдмрдЧ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХреЗрд╡рд▓ iPad MasterDetailRenderer рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИред рдЗрд╕рдиреЗ 2.4 рдпрд╛ рдЙрд╕рд╕реЗ рдкрд╣рд▓реЗ рдмрджрд╕реВрд░рдд рдХрд╛рдордХрд╛рдЬ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рдЕрд▓рдЧ рд╣реИред

рд╣реИрд▓реЛ, рдХреЛрдИ рдЦрдмрд░ рд╣реИ?

@scriptBoris рд╕рдВрднрд╛рд╡рд┐рдд рдХрд╛рдордХрд╛рдЬ рдЗрди рд▓рд┐рдВрдХреНрд╕ рдореЗрдВ рджрд┐рдП рдЧрдП рд╣реИрдВ, рдПрдХ рд╕рдорд╛рдзрд╛рди рдмреЗрд╣рддрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рддреЛ рджреВрд╕рд░рд╛ рдЖрдкрдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕рдВрд░рдЪрдирд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ред

https://forums.xamarin.com/discussion/67854/android-menu-and-back-button-not-working

https://theconfuzedsourcecode.wordpress.com/2017/03/12/lets-override-navigation-bar-back-button-click-in-xamarin-forms/

рдореИрдВрдиреЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рд▓рд┐рдВрдХ рд╕реЗ рджреЛрдиреЛрдВ рд╕рдорд╛рдзрд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд┐рдП рд╣реИрдВред

рд╢реБрдн рджреЛрдкрд╣рд░, рдореИрдВ рдЖрдкрдХреЛ рдкрд░реЗрд╢рд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрд╖рдорд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕рдорд╛рдЪрд╛рд░ рд╣реИ? .╨Ю

рдореИрдВ рд╕рд╡рд╛рд▓ рдЕрдкрдбреЗрдЯ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ :)

<ContentPage NavigationPage.HasBackButton="False">

рдХреНрдпрд╛ рдЗрд╕ рдкрд░ рдХреЛрдИ рдЕрдкрдбреЗрдЯ рд╣реИ? рдЗрд╕ рд╕реВрддреНрд░ рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рд╕рдорд╛рдзрд╛рди рд╕реНрд╡реАрдХрд╛рд░реНрдп рд╕реЗ рдЕрдзрд┐рдХ рд╣реИрдВ, рдпрд╣ рд╡рд░реНрд╖реЛрдВ рд╕реЗ рд╣реИ рдФрд░ рд▓реЛрдЧ рдЗрд╕рдХрд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдХреНрдпрд╛ рдЬрд╝рд╛рдорд░реАрди рдЯреАрдо рдХрд╛ рдХреЛрдИ рднреА рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░ рд╕рдХрддрд╛ рд╣реИ? рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрдИ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрдбрд╝рд╛ рдореБрджреНрджрд╛ рд╣реИред

рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЗрд╕реЗ рд╢реЗрд▓ рдореЗрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдкреНрд░рд┐рдЬреНрдо рдпрд╛ рдПрдорд╡реАрд╡реАрдПрдордХреНрд░реЙрд╕ рд╢реЗрд▓ рдХрд╛ рд▓рд╛рдн рдЙрдард╛рдиреЗ рд╡рд╛рд▓реЗ рдХрдИ рдмрдбрд╝реЗ рдРрдкреНрд╕ рдХреЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдРрд╕реА рдЪреАрдЬ рд╣реИ рдЬрд┐рд╕рдХреА рд╣рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдзрдиреНрдпрд╡рд╛рдж

рдХреНрд╖рдорд╛ рдпрд╛рдЪрдирд╛ @akemper1 рд▓реЗрдХрд┐рди рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХреЛрдИ рд╡рд┐рд╢реЗрд╖ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рд╣реИред

рд╣рдо рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рднреВрд▓реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдПрдкреАрдЖрдИ рдкрд░ рдмрд╕рдиреЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рд╡рд┐рд▓рдВрдм рд╣реЛ рд░рд╣рд╛ рд╣реИред рдХреБрдЫ рд▓рдВрдмрд┐рдд рд╢реЗрд▓ рдкреАрдЖрд░ рд╣реИрдВ рдЬреЛ рдмреИрдХ рдмрдЯрди рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдпрд╣рд╛рдВ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдП рдЧрдП рдПрдкреАрдЖрдИ рдкрд░ рдкреНрд░рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗ

рдореИрдВ рдХрдИ рд▓реЛрдЧреЛрдВ рд╕реЗ рд╕рд╣рдордд рд╣реВрдВ рдЬреЛ рдХрд╣ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдЙрдирдХреЗ рд▓рд┐рдП рдПрдХ рдмрдбрд╝рд╛ рдореБрджреНрджрд╛ рд╣реИред

рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВ рдХреБрдЫ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рджреЗрдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВред рдореИрдВ рдмрд╕ рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рд╡рд╛рдкрд╕ рдЬрд╛рдиреЗ рд╕реЗ рд░реЛрдХрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдЬрдм рддрдХ рдХрд┐ рд╡реЗ "рдкреБрд╖реНрдЯрд┐" рди рдХрд░реЗрдВ рдХрд┐ рд╡реЗ рдЙрд╕ рдкреГрд╖реНрда рдкрд░ рдкрд░рд┐рд╡рд░реНрддрди рдЦреЛ рджреЗрдВрдЧреЗ рдЬреЛ рд╡реЗ рд╣реИрдВред

рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рдЦрд╝рдмрд░? рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рд▓рдВрдмрд╛ рд╕рдордп рд░рд╣рд╛ рд╣реИ :(

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

jamiewest picture jamiewest  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

mattregul picture mattregul  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

EmilAlipiev picture EmilAlipiev  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

MartinWegner picture MartinWegner  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

mfeingol picture mfeingol  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ