2014-09-25 77 views
0

我有一個彈出窗口應該放在其他一些「錨點」視圖的右邊。
我在某些位置使用Android的PopupWindow(計算在錨視圖的右側)。如何設置View的(不是TextView的)最大寬度programmaticaly?

如果它很小,一切正常,但當彈出視圖非常大時,它會忽略給定的位置並覆蓋錨點視圖。我想知道如何防止這種情況,並使彈出式窗口與內容一樣大,但不會大於給定位置和屏幕右邊緣之間的距離(讓我們稱之爲可用空間)。

這可以通過在顯示彈出窗口之前將內容的最大寬度設置爲可用空間來解決,但只有TextView具有此屬性。

我可以強制測量內容並在寬度大於可用空間時更改寬度,但我相信我找不到更好的方法。

由於

回答

0

包裝你視圖中的佈局,並在代碼中設置

wraplayout.getLayoutParams()高度=高度。

wraplayout.getLayoutParams()寬度=寬度。

相關問題