Java Android预设登录活动-标题/状态栏不会消失。什么都试过了
在有人将此标记为重复之前,我花了数小时在google和StackOverflow中查找我的问题的答案,但没有找到任何答案 我使用过Android Studio登录活动,但我无法在一个活动(不是整个应用程序)中让标题栏消失。我读过至少10篇关于如何做到这一点的不同文章,其中大多数都说了同样的话,但没有一篇有效。事实上,编辑我的.java类会使我的应用程序崩溃。这与登录活动中涉及的预构建代码有关系吗 我在我的一个java文件中尝试了以下不同顺序的代码块: getWindow().setFlags(WindowManager.LayoutParams.FLAG_全屏,Java Android预设登录活动-标题/状态栏不会消失。什么都试过了,java,android,titlebar,Java,Android,Titlebar,在有人将此标记为重复之前,我花了数小时在google和StackOverflow中查找我的问题的答案,但没有找到任何答案 我使用过Android Studio登录活动,但我无法在一个活动(不是整个应用程序)中让标题栏消失。我读过至少10篇关于如何做到这一点的不同文章,其中大多数都说了同样的话,但没有一篇有效。事实上,编辑我的.java类会使我的应用程序崩溃。这与登录活动中涉及的预构建代码有关系吗 我在我的一个java文件中尝试了以下不同顺序的代码块: getWindow().setFlags(W
WindowManager.LayoutParams.FLAG(全屏) this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_全屏, WindowManager.LayoutParams.FLAG(全屏);requestWindowFeature(窗口。功能\u无\u标题) this.requestWindowFeature(Window.FEATURE\u NO\u TITLE) 我尝试在XML文件中设置NoActionBar主题,并将其添加到清单中(我不想这样做,因为这会覆盖应用程序……我只想让一页(登录)的标题栏消失) 我已经尝试了所有我能在这里和谷歌搜索上找到的东西。还有其他人在使用Studio的登录活动时遇到过这个问题吗 还有,我找到了这个答案- “您应该在'styles.xml'中使用'NoActionBar'样式。然后创建 在布局中添加工具栏,并将子视图添加到工具栏中,设置标题 并根据您的喜好进行修改。”
- 这也不起作用。我在这里找到了答案:
我也尝试过这个主题,但也没用:当我们使用登录模板创建活动时,我们会看到类似这样的内容-
public class LoginActivity extends AppCompatActivity implements LoaderCallbacks<Cursor> {....
公共类LoginActivity扩展AppCompatActivity实现LoaderCallbacks{。。。。
现在,我们可以看到我们的活动扩展到了AppCompatActivity。
因此,我们需要创建一个扩展AppCompat主题的自定义样式,并覆盖它以隐藏状态栏
首先,在styles.xml中创建一个自定义样式,如下所示-
<style name="MyNoActionBarTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:windowNoTitle">true</item>
<item name="android:windowActionBar">false</item>
<item name="android:windowFullscreen">true</item>
<item name="android:windowContentOverlay">@null</item>
</style>
<activity
android:name=".LoginActivity"
android:theme="@style/MyNoActionBarTheme"
android:label="@string/title_activity_login">
</activity>
真的
假的
真的
@空的
现在,在AndroidManifest.xml中,声明LoginActivity的“主题”属性,如下所示-
<style name="MyNoActionBarTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:windowNoTitle">true</item>
<item name="android:windowActionBar">false</item>
<item name="android:windowFullscreen">true</item>
<item name="android:windowContentOverlay">@null</item>
</style>
<activity
android:name=".LoginActivity"
android:theme="@style/MyNoActionBarTheme"
android:label="@string/title_activity_login">
</activity>
,状态栏消失,活动现在全屏显示
请告诉我这是否对您不起作用。我也在Android Studio中创建了一个登录模板作为第一步。如果您的LoginActivity
源自AppCompatActivity
,请使用下面的代码隐藏操作栏
getSupportActionBar().hide();
如果您使用工具栏作为操作栏,请使用
((AppCompatActivity)getActivity()).getSupportActionBar().hide();
对于AppCompat
,以下解决方案适合我:
在styles.xml
中添加没有操作栏的新主题样式,并设置parent=“theme.AppCompat.NoActionBar”
结果如下:
对不起。是的,样式名称应该是相同的。我错了。现在编辑了答案。如果可以的话,我会拥抱你。你是一个救生员。而且节省了大量的时间!我的天啊……Stackoverflow上花了这么多时间来研究大量与我类似的问题,但没有运气。你跳上去,砰的一声!它开始工作了。谢谢你!@InstaSteve haha。没问题,伙计。谢谢你k答案被接受,以便将来对其他人也有帮助。谢谢!完成!我希望其他人会发现。我担心我会秃顶拔头发。保重,祝你一切顺利!@InstaSteve非常感谢你!别担心,这会发生在我们所有人身上,这就是我们在这里互相帮助的原因。快乐coding!getSupportActionBar().hide();对我不起作用。抱歉,我应该在问题中提到我已经尝试过了。没有使用工具栏。不过,谢谢!