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"
可以了 ,看一下效果
补:沉浸式状态栏条用软键盘冲突(待补充,骚等)