Xamarin.android 更改语言顶部菜单时出错

Xamarin.android 更改语言顶部菜单时出错,xamarin.android,Xamarin.android,我想在手机语言更改时更改图标。 使用此代码绘制顶部菜单。 如果手机的语言发生变化,退出图标将被翻转 如果手机的语言是阿拉伯语,并且是自然语言,那么图标就会是这样。 如果手机的语言为英语,并且不是正常和倒置的,则图标将如下所示 您可以尝试以下方法更改后退按钮图标: ActionBar.SetDisplayHomeAsUpEnabled(true); ActionBar.SetHomeAsUpIndicator(Resource.Mipmap.Icon); // here modify the

我想在手机语言更改时更改图标。 使用此代码绘制顶部菜单。 如果手机的语言发生变化,退出图标将被翻转

如果手机的语言是阿拉伯语,并且是自然语言,那么图标就会是这样。

如果手机的语言为英语,并且不是正常和倒置的,则图标将如下所示


您可以尝试以下方法更改后退按钮图标:

ActionBar.SetDisplayHomeAsUpEnabled(true);
ActionBar.SetHomeAsUpIndicator(Resource.Mipmap.Icon); // here modify the image as your need
然后通过在所需活动中启动来修改它:


您好,我不明白这一点。如果语言更改为手机,退出图标将被翻转。您的意思是当菜单项更改时后退按钮的动画吗?如果手机的主要语言是阿拉伯语,并且更改为英语。图标显示为反向,而不是反向basically@ALLE根据您的描述,您的意思是运行android应用程序,然后在后台设置此应用程序,更改手机设备语言,最后android应用程序菜单图标改变了?如果没有,您如何更改语言?Cherry Bu。语言由用户更改为整个手机。这不是按应用程序应用的选项
 public override bool OnCreateOptionsMenu(IMenu menu)
        {
            MenuInflater.Inflate(Resource.Menu.toolbar_menub, menu);
            return base.OnPrepareOptionsMenu(menu);
        }

        public override bool OnOptionsItemSelected(IMenuItem item)
        {
            switch (item.ItemId)
            {
                case Resource.Id.back:
                    //do something

                    Finish();

                    return true;

            }
            return base.OnOptionsItemSelected(item);
        }
        //
ActionBar.SetDisplayHomeAsUpEnabled(true);
ActionBar.SetHomeAsUpIndicator(Resource.Mipmap.Icon); // here modify the image as your need
protected override void OnResume()
{
    base.OnResume();

    string locale = Locale.Default.Language;
    //System.Console.WriteLine("-----"+locale);
    if (locale == "en")
    {
        ActionBar.SetDisplayHomeAsUpEnabled(true);
        ActionBar.SetHomeAsUpIndicator(Resource.Mipmap.Icon);
    }
    else
    {
        // other language
    }
}