diff options
author | adrianknight89 <adrianknight89@outlook.com> | 2017-02-15 05:39:02 -0600 |
---|---|---|
committer | Rui Marinho <me@ruimarinho.net> | 2017-02-15 11:39:02 +0000 |
commit | 1d8e098e2a85d5f82eeb816f7e12c3c8e9381262 (patch) | |
tree | a747aa4fb24f5d41fb59a4325319adf1a70d7efb /Xamarin.Forms.Controls.Issues | |
parent | 340a705c5e2f912f97e8e276215de4ff20583e59 (diff) | |
download | xamarin-forms-1d8e098e2a85d5f82eeb816f7e12c3c8e9381262.tar.gz xamarin-forms-1d8e098e2a85d5f82eeb816f7e12c3c8e9381262.tar.bz2 xamarin-forms-1d8e098e2a85d5f82eeb816f7e12c3c8e9381262.zip |
[iOS] MasterDetailPage master icon should be changeable from any page on the stack (#608)
* master detail page master icon could be changed from any page on the stack
* change icon names
* added titles
Diffstat (limited to 'Xamarin.Forms.Controls.Issues')
2 files changed, 136 insertions, 0 deletions
diff --git a/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Bugzilla32865.cs b/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Bugzilla32865.cs new file mode 100644 index 00000000..27769528 --- /dev/null +++ b/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Bugzilla32865.cs @@ -0,0 +1,135 @@ +using System; +using Xamarin.Forms.CustomAttributes; +using Xamarin.Forms.Internals; + +#if UITEST +using Xamarin.UITest; +using NUnit.Framework; +#endif + +// Apply the default category of "Issues" to all of the tests in this assembly +// We use this as a catch-all for tests which haven't been individually categorized +#if UITEST +[assembly: NUnit.Framework.Category("Issues")] +#endif + +namespace Xamarin.Forms.Controls.Issues +{ + [Preserve(AllMembers = true)] + [Issue(IssueTracker.Bugzilla, 32865, "On MasterDetailPage trying to change Icon of Master page doesn\'t work if another view is pushed and Image is renderer in blue", PlatformAffected.iOS)] + public class Bugzilla32865 : TestMasterDetailPage // or TestMasterDetailPage, etc ... + { + public static Bugzilla32865 Mdp; + + protected override void Init() + { + Mdp = this; + + Master = new ContentPage {Title = "Master"}; + Detail = new NavigationPage(new DetailView32865()); + } + + public void ChangeIcon() + { + Master.Icon = "settings"; + } + public void ChangeIcon2() + { + Master.Icon = "menuIcon"; + } + } + + [Preserve(AllMembers = true)] + public class DetailView32865 : ContentPage + { + public DetailView32865() + { + Title = "Page1"; + + var label = new Label + { + Text = "Push a page and then change master icon. The icon should be changeable from any page on the navigation stack.", + HorizontalTextAlignment = TextAlignment.Center, + VerticalTextAlignment = TextAlignment.Center + }; + + var button = new Button() + { + Text = "Icon 1", + }; + button.Clicked += Button_Clicked; + var button2 = new Button() + { + Text = "Icon 2", + }; + button2.Clicked += Button2_Clicked; + var button3 = new Button() + { + Text = "Push Page", + }; + button3.Clicked += Button3_Clicked; + + var layout = new StackLayout() + { + VerticalOptions = LayoutOptions.FillAndExpand, + HorizontalOptions = LayoutOptions.FillAndExpand, + Children = { label, button, button2, button3 }, + }; + Content = layout; + } + void Button3_Clicked(object sender, EventArgs e) + { + Navigation.PushAsync(new DetailView232865()); + } + + void Button_Clicked(object sender, EventArgs e) + { + Bugzilla32865.Mdp.ChangeIcon(); + } + + void Button2_Clicked(object sender, EventArgs e) + { + Bugzilla32865.Mdp.ChangeIcon2(); + } + } + + [Preserve(AllMembers = true)] + public class DetailView232865 : ContentPage + { + public DetailView232865() + { + Title = "Page2"; + + var button = new Button() + { + Text = "Icon 1", + }; + button.Clicked += Button_Clicked; + + var button2 = new Button() + { + Text = "Icon 2", + }; + button2.Clicked += Button2_Clicked; + + var layout = new StackLayout() + { + VerticalOptions = LayoutOptions.FillAndExpand, + HorizontalOptions = LayoutOptions.FillAndExpand, + Children = { button, button2 }, + }; + + Content = layout; + } + + void Button_Clicked(object sender, EventArgs e) + { + Bugzilla32865.Mdp.ChangeIcon(); + } + + void Button2_Clicked(object sender, EventArgs e) + { + Bugzilla32865.Mdp.ChangeIcon2(); + } + } +}
\ No newline at end of file diff --git a/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Xamarin.Forms.Controls.Issues.Shared.projitems b/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Xamarin.Forms.Controls.Issues.Shared.projitems index 754133de..b3b14346 100644 --- a/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Xamarin.Forms.Controls.Issues.Shared.projitems +++ b/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Xamarin.Forms.Controls.Issues.Shared.projitems @@ -58,6 +58,7 @@ <SubType>Code</SubType> </Compile> <Compile Include="$(MSBuildThisFileDirectory)Bugzilla32847.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)Bugzilla32865.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Bugzilla32956.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Bugzilla33248.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Bugzilla33268.cs" /> |