84669 orang belajar
152542 orang belajar
20005 orang belajar
5487 orang belajar
7821 orang belajar
359900 orang belajar
3350 orang belajar
180660 orang belajar
48569 orang belajar
18603 orang belajar
40936 orang belajar
1549 orang belajar
1183 orang belajar
32909 orang belajar
我想在5.0 或者4.4 操作系统都实现沉淀式状态栏或透明状态栏,最好全部都采用style 的方式实现,最好不用这个开源库https://github.com/jgilfelt/SystemBarTint求解决思路
经过这几天的思考和研究,发现使用ActionBar,和不使用ActionBar,改为Toolbar 效果完全是不一样的,那在这两种情况下是否都可以完美的实现呢
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
对于top view, 可以用style,
但window flag还是需要代码做版本支持判断的,
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
是没法在style中表示的,style自己做不了版本标识区别。
activity_main.xml
MainActivity.java
public class MainActivity extends Activity { @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); } } }
自己的解决方案:https://coding.net/u/tianshaokai/p/MaterialDesignDemo/git低版本实现Material Design 的两种方式https://github.com/Witype/SystemBarTintDemohttps://github.com/Witype/ToolbarStatusDemo
实现状态栏沉浸非常简单,而且只需要通过style配置在values-v19下的styles.xml里定义如下主题,并在Manifest.xml里将应用主题确定为这个主题即可。
values-v19
styles.xml
Manifest.xml
android:windowTranslucentStatus表示状态栏透明android:windowTranslucentNavigation表示导航栏(虚拟按键栏)透明
android:windowTranslucentStatus
android:windowTranslucentNavigation
沉浸是小事,关键麻烦在对layout布局里的改动,fitsSystemWindows的优化,凭经验告诉你,SystemBarTint已经算是最简单的解决方案。
layout
fitsSystemWindows
对于top view, 可以用style,
但window flag还是需要代码做版本支持判断的,
是没法在style中表示的,style自己做不了版本标识区别。
activity_main.xml
MainActivity.java
自己的解决方案:https://coding.net/u/tianshaokai/p/MaterialDesignDemo/git
低版本实现Material Design 的两种方式
https://github.com/Witype/SystemBarTintDemo
https://github.com/Witype/ToolbarStatusDemo
实现状态栏沉浸非常简单,而且只需要通过style配置
在
values-v19
下的styles.xml
里定义如下主题,并在Manifest.xml
里将应用主题确定为这个主题即可。android:windowTranslucentStatus
表示状态栏透明android:windowTranslucentNavigation
表示导航栏(虚拟按键栏)透明沉浸是小事,关键麻烦在对
layout
布局里的改动,fitsSystemWindows
的优化,凭经验告诉你,SystemBarTint已经算是最简单的解决方案。