java - 为什么我无法删除 Android 应用中的操作栏?
问题描述
我在 Android Studio 中创建了一个干净的应用程序,并对标准主题进行了一些更改:
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
但在检查移动设备后,应用程序崩溃,并显示以下内容:
有人可以帮我解释这里发生了什么吗?
解决方案
使用默认主题并使用此以编程方式删除操作栏
requestWindowFeature(Window.FEATURE_NO_TITLE);
ActionBar actionBar = getSupportActionBar();
if (actionBar != null) {
actionBar.hide();
}
如何使用?
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
ActionBar actionBar = getSupportActionBar();
if (actionBar != null) {
actionBar.hide();
}
setContentView(R.layout.activity_main);
}
}
要删除状态栏和操作栏,请使用此
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
ActionBar actionBar = getSupportActionBar();
if (actionBar != null) {
actionBar.hide();
}
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_main);
}
}
推荐阅读
- ethereum - 为什么我的智能合约构造函数在部署时没有自动调用?
- excel - 观察者模式:通过 FormControl 关闭用户窗体会导致堆栈空间不足错误
- node.js - Discord bot 无法通过 ID 获取用户集合
- python - Python 中带有 3 个参数的 Lambda 函数
- visual-studio - 如何清空 Visual Studio 编辑器撤消缓冲区?
- javascript - Firebase newData.val() 未用于检查孩子是否存在
- c# - c#dictionary如何将具有重复值的字符串分隔列表中的数据添加到字典中
- c# - 尝试在 Unity 中使用脚本更改颜色 - SpriteRenderer.color 不起作用
- c# - 如何查看您的分步结果,例如在列表中
- powerquery - 使用 Power Query 合并、联接和连接数据