在Xamarin.Android中隐藏标题栏

Aou*_*hid 5 c# android xamarin.android xamarin

我刚开始使用Xamarin。即使在VS 2019中,也花了一天的时间解决愚蠢的调试问题。无论如何,我想所有阅读这篇文章的Xamarin开发人员都已经知道ar $ e Xamarin有多痛苦。

无论如何,在我的Xmarin.Android(空白)项目中,我试图删除标题为应用程序/项目名称的标题栏(我想是的)。所以,这就是我在说的:

应用标题

请注意 :

在继续说我尝试过的事情之前,我必须补充一点,所有解决方案都是从Xamarin.Forms相关文章/论坛中找到的。我非常困惑,是否选择Xamarin.Android做出了错误的选择,因为它几乎没有支持。

到目前为止我尝试过的是:

  • android:theme="@android:style/Theme.NoTitleBar"在AndroidManifest.xml中添加

  • 在调用之前,在内部方法中添加RequestWindowFeature(WindowFeatures.NoTitle);了。MainActivity.csOnCreatebase.OnCreate

结果保持不变。标题栏始终存在。但是,这是Xamarin 的另一个神秘错误(啊,什么也不新鲜,对吧?)我发现了!

从设计师的顶部栏中更改主题时:

顶栏

更改反映在设计器中。我的意思是,如果我将主题更改为Black NoTitleBar,则标题栏消失了。但是,一旦我启动该应用程序,标题栏就会在模拟器和设计器中弹出

那么,是这样吗?有什么Xamarin.Android具体的解决方案吗?还是Xamarin.Android由于缺乏支持论坛,我是否真的做出了错误的选择?

编辑1

当我手动更改清单文件并设置时android:theme="@android:style/Theme.NoTitleBar",然后从设计器中,我将主题更改为AppDefault,清单文件似乎保持不变。我的意思是清单文件中声明的主题仍然存在Theme.NoTitleBar

这就是Activity属性的样子:

[Activity(Label = "@string/app_name", Theme = "@style/AppTheme", MainLauncher = true)]
Run Code Online (Sandbox Code Playgroud)

更改AppThemeTheme.NoTitleBar会抛出运行时异常提示No resource found with the given name (Theme.NoTitleBar).......

Aou*_*hid 5

嗯,所以这毕竟是一行修复?

任何遇到此问题的人:活动类中的以下更改MainActivity.cs修复了该问题:

[Activity(Label = "@string/app_name", Theme = "@style/Theme.AppCompat.Light.NoActionBar", MainLauncher = true)]
Run Code Online (Sandbox Code Playgroud)

我想你也可以设置其他主题。毕竟,您是 UI 大师!