Customrenderer android删除tabbedpage导航栏图标并减少fontsize

时间:2018-04-19 10:55:06

标签: android xamarin

所以基本上我在标签页中有一个标准的导航栏。我称之为<local:name></local:name>

的项目

在iOS上它看起来很棒,但在Android上,文字会被切断,而且图标太大了。

  • 我想从导航栏中删除图标,并通过自定义Android渲染器缩小文本。

因为我是Xamarin的新手,所以我很难理解如何解决这个问题。直到现在我还有以下内容:

[assembly: ExportRenderer(typeof(Navigation), typeof(CustomNav))]
namespace SiteManager.Droid
{
public class CustomNav : TabbedRenderer
{
    public CustomNav(Context context) : base(context)
    {
    }

    protected override void OnElementChanged(ElementChangedEventArgs<TabbedPage> e)
    {
        base.OnElementChanged(e);
    }
}

1 个答案:

答案 0 :(得分:0)

所以,我认为没有必要为此做一个自定义渲染器。

要从Android操作栏中删除图标,只需在内容页面上为每个标题添加以下内容:

<ContentPage
Title="Page1">
<ContentPage.Icon>
    <OnPlatform x:TypeArguments="FileImageSource">
        <On
            Platform="iOS"
            Value="xx.png" />
    </OnPlatform>
</ContentPage.Icon>

为了缩小文本范围,请在droid / resources / values / styles.xml中添加以下内容:

<style name="tab_text" parent="@android:style/TextAppearance.Widget.TabWidget">
<item name="android:textSize">12dp</item>

最后,在Tabbar.axml中引用它,如:

app:tabTextAppearance="@style/tab_text"