1,传统的手机状态栏是呈现出黑色或者白色条状的,有的和手机主界面有很明显的区别。这样就在一定程度上牺牲了视觉宽度,界面面积变小。看一下QQ的应用
2,实现起来也挺简单的,来一起看一下吧
MainActivity.class
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); setImmerseLayout(findViewById(R.id.leave_message_layout)); //透明状态栏 getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); //透明导航栏 getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION); } }
activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#ffffff" android:orientation="vertical" tools:context=".MainActivity"> <TextView android:paddingLeft="5dp" android:fitsSystemWindows="true" android:clipToPadding="true" android:textColor="#f1e5e5" android:text="你有男朋友吗?" android:layout_width="match_parent" android:layout_height="100dp" android:background="#009959" /> </LinearLayout>
主要是这两句代码:
android:fitsSystemWindows="true" android:clipToPadding="true"
可以了 ,看一下效果
补:沉浸式状态栏条用软键盘冲突(待补充,骚等)