在Xamarin.Android中隐藏标题栏

问题描述 投票:2回答:1

我刚刚开始使用Xamarin。即使在VS 2019中也花了一天时间来修复愚蠢的调试问题。无论如何,我想所有阅读这篇文章的Xamarin开发者都已经知道了这个版本中的Xamarin有多大的痛苦。

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

App Header

请注意 :

在继续说我尝试过之前,我必须补充一下,所有解决方案都是从Xamarin.Forms相关的帖子/论坛中找到的。我很困惑,如果我选择Xamarin.Android做出了错误的选择,因为它几乎没有支持可用。

到目前为止我尝试了什么:

  • 在AndroidManifest.xml中添加了android:theme="@android:style/Theme.NoTitleBar"
  • 在调用RequestWindowFeature(WindowFeatures.NoTitle);之前,在MainActivity.cs方法中加入OnCreate中的base.OnCreate

结果保持不变。标题栏始终存在。然而,这是Xamarin的另一个神秘的错误(啊,没什么新鲜的,对吗?)我找到了!

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

Top Bar

这些变化反映在设计师身上。我的意思是,如果我将主题改为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)]

AppTheme改变Theme.NoTitleBar抛出一个运行时异常,说No resource found with the given name (Theme.NoTitleBar).......

c# android xamarin xamarin.android
1个回答
0
投票

嗯,毕竟这是一线修复?

任何人都在努力解决这个问题:活动类MainActivity.cs的以下变化修复了它:

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

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


0
投票

Xamarin.Android中隐藏标题栏有两种方法。 Aousaf Rashid已经通过使用样式提到了一个。另一个简单的方法是:

ActionBar.Hide();

在oncreate方法中的活动

© www.soinside.com 2019 - 2024. All rights reserved.