设置activity样式

一、隐藏titlebar

方法1:当style设置为 

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 
的情况下,隐藏titlebar。
1.1 MainActivity 继承 AppCompatActivity
 
  
ActionBar supportActionBar = appCompatActivity.getSupportActionBar();
if(supportActionBar != null) {
    supportActionBar.hide();
}
1.2 MainActivity 继承 Activity
 
  
activity.requestWindowFeature(Window.FEATURE_NO_TITLE);
方法二:可以直接AndroidManifest文件中设置 activity的 theme,在style中定义样式继承NoActionBar的样式。
二、沉浸式状态栏
方法一: 在AndroidManifest文件中 设置 activity theme 
<style name="ImersionStyle" parent="AppTheme">
    <item name="windowNoTitle">trueitem>
    <item name="android:fitsSystemWindows">trueitem>
    <item name="android:clipToPadding">trueitem>
style>
activity类中 添加代码
 
  
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
    // 透明状态栏
    getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
    // 透明导航栏
    getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
}
方法二: 当activity样式为NoActionBar的样式时。
在布局文件中添加
 
  
android:fitsSystemWindows="true"属性
在activity类中添加代码
getWindow().getDecorView().setSystemUiVisibility(
    View.SYSTEM_UI_FLAG_LAYOUT_STABLE
        | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
    // 透明状态栏
    getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
    // 透明导航栏
    getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
}
三、设置全屏
通过上面的方法设置隐藏titlebar,并在activity中添加代码
window.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
    WindowManager.LayoutParams.FLAG_FULLSCREEN);
四、半透明activity
 
  
<style name="Translucent" parent="AppTheme">
    
    <item name="windowNoTitle">trueitem>
    
    <item name="android:windowIsTranslucent">trueitem>
    
    <item name="android:windowBackground">@android:color/transparentitem>
    
    <item name="android:windowContentOverlay">@nullitem>
    
    
    
    <item name="android:backgroundDimEnabled">trueitem>
style>




你可能感兴趣的:(activity)