Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 更改工具栏项的可见性或文本大小_C#_Xaml_Xamarin_Xamarin.forms - Fatal编程技术网

C# 更改工具栏项的可见性或文本大小

C# 更改工具栏项的可见性或文本大小,c#,xaml,xamarin,xamarin.forms,C#,Xaml,Xamarin,Xamarin.forms,我有一个底部选项卡页面,它总是按照我想要的方式工作,但是随着Xamarin.Forms更新到4.7版,这些项目显示了标题,从而打破了布局 我想知道一个方法,回到以前的方式,或者缩小标题的大小 我在Stack Overflow尝试了其他解决方案,但没有成功 在Xamarin之前。表单更新: 在Xamarin之后。表单更新: 选项卡页.xaml <?xml version="1.0" encoding="utf-8" ?> <Tabbed

我有一个底部
选项卡页面
,它总是按照我想要的方式工作,但是随着Xamarin.Forms更新到4.7版,这些项目显示了标题,从而打破了布局

我想知道一个方法,回到以前的方式,或者缩小标题的大小

我在Stack Overflow尝试了其他解决方案,但没有成功

在Xamarin之前。表单更新:

在Xamarin之后。表单更新:

选项卡页.xaml

<?xml version="1.0" encoding="utf-8" ?>
<TabbedPage xmlns="http://xamarin.com/schemas/2014/forms"
            xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"       
            xmlns:android="clr-namespace:Xamarin.Forms.PlatformConfiguration.AndroidSpecific;assembly=Xamarin.Forms.Core"
            xmlns:home="clr-namespace:BaseApp.Views.Home"
            xmlns:pdv="clr-namespace:BaseApp.Views.Pdv"
            xmlns:historico="clr-namespace:BaseApp.Views.Historico"
            xmlns:notificacoes="clr-namespace:BaseApp.Views.Notificacao"
            xmlns:config="clr-namespace:BaseApp.Views.Configuracao"
            xmlns:plugin="clr-namespace:Plugin.Badge.Abstractions;assembly=Plugin.Badge.Abstractions"
            x:Class="BaseApp.Views.TabbedPage.TabbedPage"
            android:TabbedPage.ToolbarPlacement="Bottom"
            android:TabbedPage.BarItemColor="{StaticResource CorItemBarra}"
            BarTextColor="{StaticResource CorBranco}"
            BackgroundColor="{StaticResource CorBranco}"            
            BarBackgroundColor="{StaticResource CorPretoBarra}"        
            NavigationPage.HasNavigationBar="False">

    <NavigationPage Title="INÍCIO" IconImageSource="{StaticResource ImagemIconeHome}">
        <x:Arguments>
            <home:HomePage />
        </x:Arguments>
    </NavigationPage>

    <pdv:Pdv Title="PDVs" IconImageSource="{StaticResource ImagemIconePdv}" />
    <historico:Historico Title="HISTÓRICO" IconImageSource="{StaticResource ImagemIconeHistorico}" />
    <notificacoes:Notificacao Title="NOTIFICAÇÕES"
                              IconImageSource="{StaticResource ImagemIconeNotification}"
                              plugin:TabBadge.BadgeColor="Red"
                              plugin:TabBadge.BadgePosition="PositionTopRight"
                              plugin:TabBadge.BadgeTextColor="White" />
    <config:Configuracoes Title="CONFIGURAÇÕES" IconImageSource="{StaticResource ImagemIconeConfig}" />    
</TabbedPage>

TabbedPage.xaml.cs

using BaseApp.Services;
using BaseApp.Util;
using Plugin.Badge.Abstractions;
using System;
using System.Linq;
using Xamarin.Forms;
using Xamarin.Forms.Xaml;

namespace BaseApp.Views.TabbedPage
{
    [XamlCompilation(XamlCompilationOptions.Compile)]
    public partial class TabbedPage : Xamarin.Forms.TabbedPage
    {
        public TabbedPage()
        {
            InitializeComponent();        

            MessagingCenter.Subscribe<MessageHome>(this, "AddItemTabbedPageRota", message =>
            {
                var pages = Children.GetEnumerator();
                pages.MoveNext(); // First page
                pages.MoveNext(); // Second page
                CurrentPage = pages.Current;
            });
                       
            MessagingCenter.Subscribe<MessageDateHora>(this, "AddItemInformeValidaData", async message =>
                   {
                     DateTime result = await ValidaDataEHora.ObterDataAsync();

                       //if (Convert.ToBoolean(Application.Current.Properties["UserDataEHoraErrada"]) == true)
                       //    throw new TaskCanceledException(teste);

                     if (result != null)
                         Funcoes.ComparaData(result);
                 });

            // Adiciona o número de notificações que não foram visualizadas
            if (Sessao.QuantidadeNotificacoesNaoLidas > 0)
            {
                Page telaNotificacao = Children.FirstOrDefault(page => page is Notificacao.Notificacao);
                TabBadge.SetBadgeText(telaNotificacao, Sessao.QuantidadeNotificacoesNaoLidas.ToString());
            }
        }
    }
}
使用BaseApp.Services;
使用BaseApp.Util;
使用Plugin.Badge.abstraction;
使用制度;
使用System.Linq;
使用Xamarin.Forms;
使用Xamarin.Forms.Xaml;
命名空间BaseApp.Views.TabbedPage
{
[XamlCompilation(XamlCompilationOptions.Compile)]
公共分部类选项卡页:Xamarin.Forms.TabbedPage
{
公共选项卡页()
{
初始化组件();
订阅(此“AddItemTablePageRota”,消息=>
{
var pages=Children.GetEnumerator();
pages.MoveNext();//第一页
pages.MoveNext();//第二页
CurrentPage=pages.Current;
});
订阅(此“AddItemInformeValidaData”,异步消息=>
{
DateTime结果=等待ValidaDataEHora.ObterDataAsync();
//if(Convert.ToBoolean(Application.Current.Properties[“UserDataEHoraErrada”])==true)
//抛出新TaskCanceledException(teste);
如果(结果!=null)
函数。可比数据(结果);
});
//阿迪西奥纳·奥努梅罗(Adiciona oúmero de notificações que não foram visualizadas)
如果(Sessao.QuantidadeNotificacoesNaoLidas>0)
{
Page telaNotificacao=Children.FirstOrDefault(Page=>Page为Notificacao.Notificacao);
TabBadge.SetBadgeText(telanotificao,Sessao.QuantidadeNotificacoesNaoLidas.ToString());
}
}
}
}

您能给我们分享一个最小的、可复制的示例吗?TabbedPage的默认行为是,无论Xamarin.forms的版本是什么,都会同时显示图标和标题。您是否使用任何第三方库?我正在使用库来显示通知计数器标记,它被称为
Plugin.badge
,我用新信息编辑了问题。非常感谢:)仍然需要一个最小的、可复制的示例,因为我无法在第一个使用TabbedPage的屏幕截图中获得结果。我不明白。我还需要发布什么?当我使用低于4.7版本的Xamarin.forms时,选项卡页面的工作原理与第二个屏幕截图相同,而不是第一个屏幕截图。你能给我们分享一个最小的、可复制的示例吗?TabbedPage的默认行为是,无论Xamarin.forms的版本是什么,都会同时显示图标和标题。您是否使用任何第三方库?我正在使用库来显示通知计数器标记,它被称为
Plugin.badge
,我用新信息编辑了问题。非常感谢:)仍然需要一个最小的、可复制的示例,因为我无法在第一个使用TabbedPage的屏幕截图中获得结果。我不明白。我还需要发布什么?当我使用低于4.7版本的Xamarin.forms时,选项卡页面的工作原理与第二个屏幕截图相同,而不是第一个屏幕截图。