1>区分状态栏/标题栏/导航栏
状态栏(Status Bar)
标题栏(Title Bar)
导航栏(Navigation Bar)
2>区分Title Bar/Action Bar/Tool Bar
Title Bar就是我们所俗称的标题栏,在Android 3.0 (API level 11)的时候,引入的Action Bar,其就是用来取代Title Bar的,
在Android 5.0 (API level 21)的时候,引入的Tool Bar,其就是用来取代Action Bar的;
注:关于Action Bar和Tool Bar的具体用法,可自行参考官方文档的解释;
3>隐藏标题栏
方式一:在布局文件中进行设置
整个应用都不显示标题栏:
如果是想让标题栏在整个应用中都不显示,那么,则可在AndroidManifest.xml中的节点上
设定其属性android:theme为带有NoActionBar的值,这样所创建的所有activity都不会带有标题栏了;如:
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/Theme.AppCompat.Light.NoActionBar">
注:由于节点的android:theme指定为了@style/Theme.AppCompat.Light.NoActionBar,
与此同时,又由于其所有的子节点的属性android:theme都并未指定,这样所有的activity就都不会带有标题栏
某一个activity不显示标题栏:
若是想让应用中的某一个activity不显示标题栏,则可设定对应的activity的属性android:theme为带有NoActionBar的值,如:
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/Theme.AppCompat">
android:theme="@style/Theme.AppCompat.Light.NoActionBar" >
注:由于节点的android:theme指定为了@style/Theme.AppCompat,其是带有Action Bar的,所以默认情况下,
其所有的activity都会显示标题栏,但是我们在第二个Activity(Main2Activity)中可以看到:android:theme="@style/Theme.AppCompat.Light.NoActionBar"
所以第二个Activity(Main2Activity)其也就不会显示标题栏了,但是第一个Activity(MainActivity)是会显示标题栏的;
方式二:在代码中进行设置
若是继承Activity,则使用:
requestWindowFeature(Window.FEATURE_NO_TITLE);
示例如下:package com.example.administrator.testnotitle;
import android.app.Activity;import android.os.Bundle;
import android.view.Window;
public class Main2Activity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
/****
若是继承Activity,那么此时requestWindowFeature(Window.FEATURE_NO_TITLE);有效;
* 此时的Activity是不支持getSupportActionBar().hide()这个方法的;
***/
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_main2);
}
}
若是继承AppCompatActivity,则只需加入一条语句:
getSupportActionBar().hide();
示例如下:package com.example.administrator.testnotitle;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
/***
* 如果继承的是Android Studio默认创建的AppCompatActivity,
* 那么此时,用requestWindowFeature(Window.FEATURE_NO_TITLE);无效;
* 需用getSupportActionBar().hide(),因为AppCompatActivity里边是有这个方法可供调用的;
* ***/
getSupportActionBar().hide();
setContentView(R.layout.activity_main);
}
}
出处https://blog.csdn.net/u010661782/article/details/50837212