簡體   English   中英

確保尺寸是屏幕尺寸的一個因素

[英]Ensuring a size is a factor of the screen size

我在Android中有一個GridView,該對象在屏幕旋轉時會更改大小。 我還希望這些對象之間沒有間隙。 我希望每個視圖都在150-200dp左右。

起初,我以為我可以獲取屏幕的總寬度( int totalWidth = getWindowManager().getDefaultDisplay().getWidth(); ),然后使用類似m_IconSize = Math.min(totalWidth / 4, 175); 要獲得最大圖標大小,然后使用gridView.setNumColumns(totalWidth / m_IconSize);設置網格視圖的列gridView.setNumColumns(totalWidth / m_IconSize);

但是,對於高密度分辨率或水平方向,它將始終默認為175,這不是寬度的因素,並且在GridView中的每個對象之間都會有間隙。 我怎樣才能做到完美無缺?

嗯,很明顯,在橫向中它將大於175(任何具有700像素以上的屏幕都可以做到),因此將應用175。 在更一般的注釋中,永遠不要使用固定的像素大小,不要在dimens.xml中創建一個條目,然后再讀取它。int int pixels = getResources().getDimensionPixelSize(R.dimen.whatever); ,但這只會調整密度,而不會調整水平空間。

聽起來,您應該嘗試以合適的尺寸找到可以容納的最大圖標數量,然后使用該尺寸,而不是總是嘗試使用4。

暫無
暫無

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

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