沉浸式状态栏 有很多效果,我觉得还很好,简单的方式
感谢 http://blog.csdn.net/wuyinlei/article/details/50564274
这个是用的github上的第三方库
- 1.库地址:https://github.com/jgilfelt/SystemBarTint
- 2.添加依赖库:
compile ‘com.readystatesoftware.systembartint:systembartint:1.0.3’
布局
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#ffff" android:orientation="vertical" tools:context="ex.com.mychenjinshi.MainActivity"> <TextView android:layout_width="match_parent" android:layout_height="140dp" android:background="#ff00" android:clipToPadding="true" android:fitsSystemWindows="true" android:text="你好,沉浸式状态栏" android:textSize="24dp" /> </LinearLayout>
activity
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { //透明状态栏 getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); //透明导航栏 getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION); SystemBarTintManager tintManager = new SystemBarTintManager(this); // 激活状态栏 tintManager.setStatusBarTintEnabled(true); // enable navigation bar tint 激活导航栏 tintManager.setNavigationBarTintEnabled(true); //设置系统栏设置颜色 //tintManager.setTintColor(R.color.red); //给状态栏设置颜色 tintManager.setStatusBarTintResource(R.color.colorPrimary); //Apply the specified drawable or color resource to the system navigation bar. //给导航栏设置资源 tintManager.setNavigationBarTintResource(R.color.colorPrimary); } } }