我正在尝试在android上制作默认“滚动视图”界面的变体。基本上完全相同,但顶部的蓝色页面高度为90%,底部白页有几个选项。要做到这一点,因为我读到你不能把高度分成百分比,我在主要和唯一的活动中使用了这个代码:
//To fix the height to the right level
Resources res = getResources();
AppBarLayout app_bar = findViewById(R.id.app_bar);
float heightDp = (float)getResources().getDisplayMetrics().heightPixels / 100 * 87; //The percentage
CoordinatorLayout.LayoutParams lp = (CoordinatorLayout.LayoutParams)app_bar.getLayoutParams();
lp.height = (int)heightDp;
因此,app项目只是默认的Scrolling Activity示例(CoordinatorLayout和NestedScrollView)+上面的代码。 的问题: 当它在许多设备上上下颠倒时,它会闪烁并且有时反弹很多。特别是华为的,出于某种原因。
在app:layout_scrollFlags中添加“snap”并没有好转。 使用像cheesesquare这样的演示应用程序时也会发生这种情况。 我也尝试将NestedScrollView转换为ConstraintLayout,但这使得它不能再从底部页面(从空白区域)向上滚动。
分享哪些智慧? 很抱歉这个问题很长。提前谢谢。