【问题标题】:How to add app icon to Xamarin Android app如何将应用程序图标添加到 Xamarin Android 应用程序
【发布时间】:2020-03-26 13:12:07
【问题描述】:

我正在努力将应用程序图标添加到操作栏。我试过了

ActionBar.setDisplayShowHomeEnabled(true);

但我得到了NullReferenceExeption 如果有人知道如何添加它请帮忙。 谢谢。 这是我写的代码

using Android.App;
using Android.OS;
using Android.Support.V7.App;
using Android.Runtime;
using Android.Widget;

namespace Bteg
{
    [Activity(Label = "@string/app_name", Theme = "@style/AppTheme", MainLauncher = true)]
    public class MainActivity : AppCompatActivity
    {
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            Xamarin.Essentials.Platform.Init(this, savedInstanceState);
            // Set our view from the "main" layout resource
            SetContentView(Resource.Layout.activity_main);
            ActionBar.SetDisplayShowHomeEnabled(true);
        }
        public override void OnRequestPermissionsResult(int requestCode, string[] permissions, [GeneratedEnum] Android.Content.PM.Permission[] grantResults)
        {
            Xamarin.Essentials.Platform.OnRequestPermissionsResult(requestCode, permissions, grantResults);

            base.OnRequestPermissionsResult(requestCode, permissions, grantResults);
        }
    }
}

【问题讨论】:

  • 首先欢迎来到 StackOverflow(亲切地如此)。可以帮助您获得好的答案的一件事是提出好的问题。不要只是说“它不起作用”,请解释并提供错误输出,更多的周围代码以提供更好的上下文。提供您尝试过的解决方案也非常有帮助。再次欢迎您,希望您能找到解决方案
  • 我得到了 NullReferenceExeption。那是错误输出
  • 好的。但编辑您的问题以提供此例外和minimal reproducible example。将这些添加到您的原始帖子中。谢谢
  • 好的,我添加了它们

标签: c# xamarin


【解决方案1】:

我注意到您使用了AppCompatActivity,如果您想获取操作栏,您需要使用以下代码。

  [Activity(Label = "@string/app_name", Theme = "@style/AppTheme", MainLauncher = true)]
    public class MainActivity : AppCompatActivity
    {
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            Xamarin.Essentials.Platform.Init(this, savedInstanceState);
            // Set our view from the "main" layout resource
            SetContentView(Resource.Layout.activity_main);

            SupportActionBar.SetDisplayHomeAsUpEnabled(true);

            SupportActionBar.SetHomeAsUpIndicator(Resource.Drawable.dicon);

        }
        public override void OnRequestPermissionsResult(int requestCode, string[] permissions, [GeneratedEnum] Android.Content.PM.Permission[] grantResults)
        {
            Xamarin.Essentials.Platform.OnRequestPermissionsResult(requestCode, permissions, grantResults);

            base.OnRequestPermissionsResult(requestCode, permissions, grantResults);
        }
    }

这是运行截图。

【讨论】:

  • 如果回复有帮助,请不要忘记标记为答案(点击答案右上角的✔),它将帮助其他有类似问题的人。
  • 哇!有效!非常感谢你,顺便说一句,我是 Xamarin 的新手
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-11-29
  • 2016-06-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-23
  • 2016-01-09
相关资源
最近更新 更多