ActionBar浸漬ステータスバー実装

3373 ワード

準備作業
studioは、浸透型互換ライブラリcompile 'com.readystatesoftware.systembartint:systembartint:1.0.3' eclipseを導入し、対応するクラスを導入することができる.
第1クラス、actionbar互換性
  • 最初のステップ:activityトピックandroid:theme="@style/actionBarTheme"
  • を設定
    
    ```
    
    *    :       ,            
    
    

    @TargetApi(19) private void setTranslucentStatus(boolean on) { Window win = getWindow(); WindowManager.LayoutParams winParams = win.getAttributes(); final int bits = WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS; if (on) { winParams.flags |= bits; } else { winParams.flags &= ~bits; } win.setAttributes(winParams); } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { setTranslucentStatus(true); }
    SystemBarTintManager tintManager = new SystemBarTintManager(this); tintManager.setStatusBarTintEnabled(true);//浸透色を設定するtintManager.setStatusBarTintResource(R.color.statusbar_bg);}```
  • 第3歩:windowsに適応するように設定し、レイアウトファイルにandroid:fitsSystemWindows="true"を設定しないと、アプリケーションのuiが上位になり、system ui ok
  • に進みます.
    第2類actionbarのactivityがない
  • 最初のステップ、トピックの設定、android:theme="@style/FullBleedTheme"
  • 
    
    
    
    
    ```
      
     toolbar    Theme.AppCompat.NoActionBar  
    
    

    <br> <itemname="colorPrimary">#2196F3</item><br> <itemname="colorPrimaryDark">#2196F3</item><br> <br> <itemname="colorAccent">#E91E63</item><br> ```
  • 第2ステップ:前の第2ステップと同じ.ステータスバーの透明+色
  • を設定します.
    mTintManager = new SystemBarTintManager(this);
    mTintManager.setStatusBarTintEnabled(true);
    mTintManager.setNavigationBarTintEnabled(true);  mTintManager.setStatusBarTintResource(R.color.statusbar_bg);```
    
    *    :
    
    

    android:fitsSystemWindows=”true” android:clipToPadding=”false”```
    true
    false```
    
    
    ###        
    * android:fitsSystemWindows       
    
    >                     ,   ,      。
    
    >       , true:               ,   ,          。          ,   ,      ,     。
    
    >           ,       ,AlertDialog          ,ProgressDialog               。
    
    >                。      ,                         。
    
    >                         theme 。      layout       。
    
    * Android Toast         ,     
    
    >             ,      theme   ,         ,       ,      ,       。        ,```Toast.makeText(getActivity(), “      ”,Toast.LENGTH_SHORT).show();```   ```Toast.makeText(App.getInstance(), “      ”,Toast.LENGTH_SHORT).show();```      。
    
    >   ,       。
    
    >       ,   Toast       ,   ApplicationContext   。
    
    Copyright (c) 2016 Copyright Holder All Rights Reserved.