When I try to port app to Uno, BottomAppBar is lost.
No Page.BottomAppBar is visible.
Should be visible.
I created even new Solution/Project, and changed MainPage.xaml to this:
(Page
x:Class="testAppBar.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:testAppBar"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d")
(Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}")
(TextBlock Text="Hello, world !" Margin="20" FontSize="30" /)
(TextBlock Text="zaraz pod tym powinien byc bottomappbar" VerticalAlignment="Bottom" /)
(/Grid)
(Page.BottomAppBar)
(CommandBar Name="uiCmdBar" ClosedDisplayMode="Compact" Padding="100,100,100,100" MinHeight="200")
(AppBarButton Icon="Refresh" Label="Wczytaj" /)
(AppBarButton Icon="Calendar" Label="Kalendarz" )
(/AppBarButton)
(AppBarSeparator/)
(AppBarToggleButton Name="bEvent" Icon="Globe" Label="Wydarzenia" /)
(AppBarToggleButton Name="bBirth" Icon="AddFriend" Label="Urodziny" /)
(AppBarToggleButton Name="bDeath" Icon="BlockContact" Label="Smierci" /)
(AppBarSeparator/)
(AppBarButton Icon="Setting" Label="Settings" /)
(AppBarButton Icon="Help" Label="Info" /)
(/CommandBar)
(/Page.BottomAppBar)
(/Page)
When deployed to tablet (Android 8.1 Go), no BottomAppBar.
And text "just below this should be bottomappbar" is... just above Android system bar.
I didn't test it on another android, as I have no another android device.
Nuget Package:
Reference Include="Mono.Android"
Reference Include="Mono.Android.Export"
Reference Include="mscorlib"
Reference Include="System"
Reference Include="System.Core"
Reference Include="System.Xml.Linq"
Reference Include="System.Xml"
PackageReference Include="Uno.UI" Version="1.45.0"
PackageReference Include="Uno.UniversalImageLoader" Version="1.9.32"
PackageReference Include="Microsoft.Extensions.Logging.Console" Version="1.1.1"
PackageReference Include="Microsoft.Extensions.Logging.Filter" Version="1.1.1"
Affected platform(s):
Visual Studio
Microsoft Visual Studio Community 2017
Version 15.9.15
VisualStudio.15.Release/15.9.15+28307.812
Microsoft .NET Framework
Version 4.8.03752
Installed Version: Community
Visual C++ 2017
.NET Portability Analyzer 1.1.10808.0
Application Insights Tools for Visual Studio Package 8.14.20131.1
ASP.NET and Web Tools 2017 15.9.04012.0
ASP.NET Core Razor Language Services 15.8.31590
C# Tools 2.10.0-beta2-63501-03+b9fb1610c87cccc8ceb74a770dba261a58e39c4a
Common Azure Tools 1.10
Extensibility Message Bus 1.1.49 (remotes/origin/d15-8@ee674f3)
JavaScript Language Service 2.0
JavaScript Project System 2.0
JavaScript UWP Project System 2.0
Microsoft JVM Debugger 1.0
Microsoft MI-Based Debugger 1.0
Microsoft Visual C++ Wizards 1.0
Microsoft Visual Studio VC Package 1.0
MLGen Package Extension 1.0
Mono Debugging for Visual Studio 4.13.12-pre (9bc9548)
NuGet Package Manager 4.6.0
ProjectServicesPackage Extension 1.0
ResourcePackage Extension 1.0
ResourcePackage Extension 1.0
TypeScript Tools 15.9.30718.2001
Visual Basic Tools 2.10.0-beta2-63501-03+b9fb1610c87cccc8ceb74a770dba261a58e39c4a
Visual F# Tools 10.2 for F# 4.5 15.8.0.0. Commit Hash: 6e26c5bacc8c4201e962f5bdde0a177f82f88691.
Visual Studio Code Debug Adapter Host Package 1.0
Visual Studio Tools for Universal Windows Apps 15.0.28307.718
VisualStudio.Mac 1.0
Xamarin 4.12.3.83 (d15-9@23fa80172)
Xamarin Designer 4.16.30 (e0af99a34)
Xamarin Templates 1.1.128 (6f5ebb2)
Xamarin.Android SDK 9.1.7.0 (HEAD/ba9da7a76)
Xamarin.iOS and Xamarin.Mac SDK 12.4.0.64 (9c8d8e0)
Relevant plugins
I make some test. Changed Padding to Margin, run it, and test some values at runtime.
uiCmdBar.Height = 0
uiCmdBar.ActualHeight = 0
uiCmdBar.MinHeight = 0
uiCmdBar.MaxHeight = infinity
uiCmdBar.Visibility = Visible
uiCmdBar.PrimaryCommands = set of 9 elements
Here's a sample project that replicates this issue.
PageBottomAppBar.zip
Why change from "bug" to "enhancement"?
Documentation (https://platform.uno/docs/articles/implemented/windows-ui-xaml-controls-page.html) says that Page.BottomAppBar is supported on all platforms?
The documentation is in error on this one. Those docs are built by a tool which looks for the [NotImplemented] attribute, which is missing from BottomAppBar.
In reality there's no existing code to support this feature, that's why it counts as an enhancement rather than a bug.
The documentation is in error on this one. Those docs are built by a tool which looks for the
[NotImplemented]attribute, which is missing fromBottomAppBar.
Have opened up https://github.com/unoplatform/uno/issues/1514#issue-491449327 to track this as a super easy issue to introduce new contributors to how the documentation is generated. If this remains open for too long then one of the members of the core team should pick it up and implement.
Most helpful comment
Here's a sample project that replicates this issue.
PageBottomAppBar.zip