您的位置:首页 > 移动开发 > Android开发

Android如何去掉顶部标题栏

2017-06-30 23:35 232 查看
之前使用eclipse的时候一直使用的去掉顶部标题栏有三种方法:

1、在Java文件中进行动态去除标题。该方法就是在代码setContentView前面添加this.requestWindowFeature(Window.FEATURE_NO_TITLE),

代码:

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_main);
init();
}


不过本人不推荐,因为这种方法在处理能力差的机子上可能有延迟效果,十分难看。

2、在xml中引用没有标题的主题。即是在AndroidManifest.xml文件中声明activity的时候继承没有标题的主题;

代码:

<!--登录-->
<activity android:name=".activity.LoginActivity"
android:screenOrientation="portrait"
android:theme="@android:style/Theme.Light.NoTitleBar"
android:windowSoftInputMode="adjustUnspecified|stateHidden" />


3、在style中定义没有标题,然后在AndroidManifest.xml文件中声明activity的时候将style作为主题引入:

代码:

定义style:

<style name="notitle">
<item name="android:windowNoTitle">true</item>
</style>


在AndroidManifest.xml中引入:

<!--登录-->
<activity android:name=".activity.LoginActivity"
android:screenOrientation="portrait"
android:theme="@style/notitle"
android:windowSoftInputMode="adjustUnspecified|stateHidden" />


4、定义继承主题的style取消标题栏。在Android studio中部分activity继承了AppCompatActivity,这个时候可能前三种方法都有瑕疵。因为继承了AppCompatActivity的必须要继承AppCompat类的主题。该方法步骤和方法3一样,先定义一个style,然后在AndroidManifest.xml中导入该style作为主题。

代码:

style:

<style name="NoTitleTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:windowNoTitle">true</item>
<!--<item name="android:windowFullscreen">true</item>-->
</style>


AndroidManifest.xml:

<!--首页-->
<activity android:name=".activity.MainActivity"
android:screenOrientation="portrait"
android:theme="@style/NoTitleTheme"
android:windowSoftInputMode="adjustUnspecified|stateHidden" />
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: