3.1 活动应用样式与主题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3.1 活动应用样式与主题相关的知识,希望对你有一定的参考价值。

默认情况下,一个活动占据整个屏幕。但是有些活动应用是一个对话框主题,那我们就需要掌握对活动应用样式与主题的更改

如果是更改Activity应用的样式在androidManifest.xml文件进行修改,需要关注的属性android:theme

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.gxa"
    android:versionCode="1"
    android:versionName="1.0" >
…….//省略部分代码
    <application
        android:allowBackup="true“
        android:theme="@android:style/Theme.Dialog" >
       ….//省略部分代码
    </application>

</manifest>

如果android:theme="@android:style/Theme.Dialog",则会将Activity的应用样式修改为一个对话框,效果图如下

技术分享

我们在平时使用APP的时候会发现有些APP应用的主题栏不会出现在手机上,那我们需要设置隐藏活动主题功能

技术分享

常用的方法:

  • 在代码中使用requestWindowFeature(Window.FEATURE_NO_TITLE)
  • 在AndroidManifest.xml文件中,android:theme="@android:style/Theme.NoTitleBar"
  • 在style.xml文件里定义,<item name="android:windowNoTitle">true</item>
package com.gxa;
….//省略部分代码
public class MainActivity extends Activity {
….//省略部分代码
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.main);
    }
}
<application android:icon="@drawable/icon"   
        android:label="@string/app_name"   
        android:theme="@android:style/Theme.NoTitleBar">
<?xml version="1.0" encoding="UTF-8" ?>  
<resources>  
    <style name="notitle">  
        <item name="android:windowNoTitle">true</item>  
    </style>   
</resources>
<application android:icon="@drawable/icon"   
        android:label="@string/app_name"   
        android:theme="@style/notitle">

 

文章内容来自:国信安刘阳

以上是关于3.1 活动应用样式与主题的主要内容,如果未能解决你的问题,请参考以下文章

错误您需要将 Theme.AppCompat 主题(或后代)与活动一起使用

如何将活动中的意图传递给已打开的片段

在 Android Studio 3.1 中的当前主题中找不到样式“coordinatorLayoutStyle”

Android 通讯录应用程序主题/样式

应用程序在样式下更改主题时崩溃

将片段显示为对话框或常规活动