簡體   English   中英

使用浮點值以編程方式更改視圖高度(Android)

[英]Change height of view programmatically with a float value (Android)

因此,我只有一個在xml中定義的簡單視圖,而我想使用的是onScroll手勢,更改該視圖的高度。 唯一的問題是LayoutParams需要整數值,而onScroll提供的距離變化是浮點值。 如何在不損失浮子精度的情況下調整此高度的大小?

這是我在onScroll方法中所擁有的:

int newHeight = mTopView.getHeight() + (int)distanceY;
if (newHeight <= maxHeight) {
    mTopView.setLayoutParams(new LinearLayout.LayoutParams(mTopView.getWidth(), newHeight));
}

正如Jaap van Hengstum所說:“ LayoutParams尺寸以像素為單位,這是屏幕上可能的最小單位;您不會損失精度”

因此,只需將浮點數轉換為int即可(也許可以使用int newHeight =(int)(height + 0.5f);由Jaap再次建議),一切都會變得流暢而涼爽。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM