首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Tabbedpage未显示,但im收到0错误

Tabbedpage未显示,但im收到0错误
EN

Stack Overflow用户
提问于 2019-12-01 00:47:35
回答 1查看 48关注 0票数 0

我试图通过使用tabbedpage在xamarin android中创建一个底部导航栏,但是一旦我调试了这个应用程序,它实际上并不存在。

xaml-前端:

代码语言:javascript
复制
 <TabbedPage.Children >
        <NavigationPage Title="Upload">
            <x:Arguments>
                <views:Upload/>
            </x:Arguments>
        </NavigationPage>
        <NavigationPage Title="Events" >
            <x:Arguments>
                <views:Events/>
            </x:Arguments>
        </NavigationPage>
        <NavigationPage Title="Projects" >
            <x:Arguments>
                <views:Projects/>
            </x:Arguments>
        </NavigationPage>
        <NavigationPage Title="Registration">
            <x:Arguments>
                <views:Registration/>
            </x:Arguments>
        </NavigationPage>
    </TabbedPage.Children>
</TabbedPage>

c# -后端:

代码语言:javascript
复制
 public partial class TabbedPage : Xamarin.Forms.TabbedPage
    {

        public TabbedPage()
        {
          InitializeComponent();
          On<Xamarin.Forms.PlatformConfiguration.Android>().SetToolbarPlacement(ToolbarPlacement.Bottom);
        }
    }
EN

回答 1

Stack Overflow用户

发布于 2019-12-02 17:24:30

我在我这边进行了测试,当Tabs大于3时,这是Android的默认行为。你的标签仍然在那里-点击它们应该在的地方,你会看到标签的变化。如果添加图标(设置IconImageSource属性),即使文本为空,图标也会显示。这里给你一个变通的方法。

您可以先使用Naxam.BottomTabbedPage作为变通方法

下载Naxam.BottomTabbedPage nuget。

然后让您的页面扩展BottomTabbedPage

代码语言:javascript
复制
[XamlCompilation(XamlCompilationOptions.Compile)]
public partial class MyTabbedPage: BottomTabbedPage
{
    public TabbedPage1()
    {
        InitializeComponent();           
    }
}

在MyTabbedPage.xaml中添加xmlns:naxam="clrnamespace:Naxam.Controls.Forms;assembly=Naxam.Controls.Forms"

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8" ?>
<naxam:BottomTabbedPage xmlns="http://xamarin.com/schemas/2014/forms"
         xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
         xmlns:d="http://xamarin.com/schemas/2014/forms/design"
         xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
         xmlns:views="clr-namespace:TabbedPageDemo.Views"
         xmlns:naxam="clr-namespace:Naxam.Controls.Forms;assembly=Naxam.Controls.Forms"
         x:Class="TabbedPageDemo.Views.MyTabbedPage">
    <NavigationPage Title="Upload">
        <x:Arguments>
            <views:Upload/>
        </x:Arguments>
    </NavigationPage>
    <NavigationPage Title="Events" >
        <x:Arguments>
            <views:Events/>
        </x:Arguments>
    </NavigationPage>
    <NavigationPage Title="Projects" >
        <x:Arguments>
            <views:Projects/>
        </x:Arguments>
    </NavigationPage>
    <NavigationPage Title="Registration">
        <x:Arguments>
            <views:Registration/>
        </x:Arguments>
    </NavigationPage>
</naxam:BottomTabbedPage>

还有另一个变通方法,你只需要编写一个简单的效果(NoShiftEffect)来应用于我们的Xamarin.Forms TabbedPage。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59118230

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档