我们使用下面的风格来实现具有android 5.0.1版本的nexus平板电脑10上的半透明导航栏和状态栏。它不仅适用于Nexus 10英寸平板电脑,但相同款式在Nexus 5和4上运行正常(安装在相应设备中的android 5.0.1版本)?您能否帮我们确定一下nexus 10inch平板电脑的问题?
<style name="AppTheme.Base" parent="Theme.AppCompat.Light">
<item name="colorPrimary">@android:color/white</item>
<item name="colorPrimaryDark">@android:color/white</item>
<item name="android:windowNoTitle">true</item>
<item name="windowActionBar">false</item>
<item name="colorAccent">@android:color/white</item>
</style>
<style name="APP_THEME" parent="AppTheme.Base">
<item name="android:windowContentTransitions">true</item>
<item name="android:windowAllowEnterTransitionOverlap">true</item>
<item name="android:windowAllowReturnTransitionOverlap">true</item>
<item name="searchViewStyle">@style/SearchViewStyle</item>
<item name="android:windowActionBarOverlay">true</item>
<item name="windowActionBarOverlay">true</item>
<item name="android:windowSharedElementEnterTransition">@android:transition/move</item>
<item name="android:windowSharedElementExitTransition">@android:transition/move</item>
<item name="windowActionBar">false</item>
<item name="android:windowTranslucentNavigation">true</item>
</style>
由于
答案 0 :(得分:2)
不幸的是,nexus 10不支持它:/ http://forum.xda-developers.com/showthread.php?t=2510252
编辑:以下是我的一个项目中的一些代码,用于检测设备是否支持透明导航栏。
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
Resources res = getResources();
int transparencyId = res.getIdentifier("config_enableTranslucentDecor", "bool", "android");
int[] attrs = new int[]{android.R.attr.windowTranslucentNavigation};
TypedArray a = mActivity.getTheme().obtainStyledAttributes(attrs);
isTranslucent = a.getBoolean(0, false) && transparencyId > 0 && res.getBoolean(transparencyId);
a.recycle();
}