所以我所拥有的只是一个在xml中定义的简单视图,我想要做的是使用onScroll手势,更改该视图的高度。唯一的问题是LayoutParams需要整数值,而onScroll提供的距离变化是浮点值。如何在不损失浮动精度的情况下调整此高度?
以下是我在onScroll方法中的内容:
int newHeight = mTopView.getHeight() + (int)distanceY;
if (newHeight <= maxHeight) {
mTopView.setLayoutParams(new LinearLayout.LayoutParams(mTopView.getWidth(), newHeight));
}
答案 0 :(得分:0)
正如Jaap van Hengstum所说:“LayoutParams尺寸以像素为单位,这是屏幕上可能的最小单位;你不能失去精确度”
所以只需将浮点数转换为int(并且可以使用int newHeight =(int)(height + 0.5f);再次由Jaap建议),一切都会顺利而且很酷。