adjustPan 不能与 FLAG_LAYOUT_NO_LIMITS 一起使用
Posted
技术标签:
【中文标题】adjustPan 不能与 FLAG_LAYOUT_NO_LIMITS 一起使用【英文标题】:adjustPan not working with FLAG_LAYOUT_NO_LIMITS 【发布时间】:2017-01-09 05:17:57 【问题描述】:我的要求是一个完全透明的状态栏,在同一activity
中动态更改状态栏的颜色。
为此,我添加了getWindow().addFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
在 style.xml 中
<item name="android:windowTranslucentNavigation">true</item>
<item name="android:windowTranslucentStatus">false</item>
所以它工作正常,但我需要在软键盘打开时调整屏幕。
所以我尝试了android:windowSoftInputMode="adjustPan|adjustResize"
,但屏幕没有调整大小或滚动。任何人都可以帮助我。
【问题讨论】:
【参考方案1】:像这样设置透明并动态更改颜色不要设置标志FLAG_LAYOUT_NO_LIMITS
,然后在打开键盘时检查屏幕。
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP)
Window window = getWindow();
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
window.setStatusBarColor(getResources()
.getColor(R.color.themeToolbarColor));
【讨论】:
需要 API 级别 21。 导航颜色怎么样,导航不会像FLAG_LAYOUT_NO_LIMITS那样透明以上是关于adjustPan 不能与 FLAG_LAYOUT_NO_LIMITS 一起使用的主要内容,如果未能解决你的问题,请参考以下文章
xml Android的EditText上,adjustPan
在包含 ScrollView 的活动中强制执行adjustPan
使用 adjustPan 作为软输入模式时是不是可以始终显示操作栏?
每行带有 EditText 的 Listview , Listview 的 FooterView 内的 Scrollview , adjustResize 和 adjustPan 都工作在一起