2013-10-09 87 views
0

我做了一些類似tab的東西。 我有HorizontalScrollViewLinearLayout和其中查看。 我想這取決於屏幕尺寸(滾動型或尺寸的LinearLayout)如何設置像父母大小百分比的視圖大小?

這樣做是爲了改變我的搜索寬度:

if (view1.size+view2.size + ... + viewn.size < scrollView.size) 
{ 
    view1.setSize(scrollView.size/n); 
    view2.setSize(scrollView.size/n); 
    ... 
    viewn.setSize(scrollView.size/n); 
} 

我嘗試設置東西onMeasure,但所有的決定是錯誤的。

回答

2

ScrollView的大小不確定,實際上取決於孩子的大小。

如果你想使用你想顯示這使得更多的意義在屏幕上,屏幕的大小和多少孩子,像下面可能工作(未測試):

int children_on_screen = 3; 
int size = getWidthOfTheScreen(); 

for(int i=0;i<yourLinearLayout.getChildCount();i++) { 
    LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) yourLinearLayout.getChildAt(i).getLayoutParams(); 
    params.width = size/children_on_screen; 
} 
yourLinearLayout.requestLayout(); 
相關問題