我想从XML
文件中的应用中删除工具栏,在图片中查看红色框。
代码为:
<include layout="@layout/toolbar"
android:id="@+id/toolbar" />
我删除了上面的代码,在运行应用程序时它崩溃了。为什么这样以及如何在我的文件中删除该工具栏?
完整代码:
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:orientation="vertical"
android:id="@+id/dlMain"
android:visibility="visible"
android:layout_height="match_parent"
android:keepScreenOn="true"
tools:context="com.namarsaham.society.jainvidhya.WebViewActivity">
<LinearLayout
android:id="@+id/dllayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<include layout="@layout/toolbar"
android:id="@+id/toolbar" />
<im.delight.android.webview.AdvancedWebView
android:id="@+id/webview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="visible"/>
</LinearLayout>
</android.support.v4.widget.DrawerLayout>
我的主题代码:
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />
<style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />
</resources>
答案 0 :(得分:1)
如果您使用自动生成的Activity,它在onCreate
中有一行代码toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
如果你从xml中删除了工具栏,那么随后使用它将是一个问题并导致它崩溃(工具栏将为null)。
可能是因为这个原因。您可以尝试删除活动文件中与工具栏相关的所有代码,或者更好的是,只需隐藏/设置工具栏的隐藏即可。它满足您的要求,不显示工具栏,您不必担心它会崩溃。
答案 1 :(得分:0)
尝试此操作以隐藏java文件中的标题栏
requestWindowFeature(Window.FEATURE_NO_TITLE);
或
您可以设置如下的应用主题: -
<application
android:theme="@style/AppTheme" />
<style name="AppTheme" parent="@style/Theme.AppCompat.Light.NoActionBar">
<item name="windowNoTitle">true</item>
<item name="android:windowNoTitle">true</item>
</style>
或强>
您也可以在manifest.xml文件下面的下面尝试:
适用于app:
<application android:theme="@android:style/Theme.Black.NoTitleBar">
对于特定活动:
<activity android:theme="@android:style/Theme.Black.NoTitleBar">
答案 2 :(得分:0)
将其放入活动/片段
中View toolbar = getActivity().findViewById(R.id.toolbar)
if(toolbar != null){
toolbar.setLayoutParams(new LinearLayout.LayoutParams(0, 0));
}
答案 3 :(得分:-1)
只需添加此行 android:visibility =“gone”
<include layout="@layout/toolbar"
android:id="@+id/toolbar"
android:visibility="gone" />