2015-07-12 129 views
0

我有一個線性佈局裏面的桌面佈局 充氣後表中的3個按鈕最後一個按鈕離開屏幕 我的意思是3個按鈕不適合屏幕寬度 我該怎麼辦?Android:按鈕離開屏幕邊緣

這裏是代碼

<TableLayout 
    android:id="@+id/buttonTableLayout" 
    android:layout_width="match_parent" 
    android:layout_height="0dp" 
    android:stretchColumns="0,1,2" 
    android:layout_weight="1"> 

    <TableRow 
     android:id="@+id/tableRow0" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" > 
    </TableRow> 

    <TableRow 
     android:id="@+id/tableRow1" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" > 
    </TableRow> 

    <TableRow 
     android:id="@+id/tableRow2" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" > 
    </TableRow> 

</TableLayout> 

回答

0

的的TableRow不檢查它的內容適合屏幕尺寸。我猜你的按鈕佔用了所有的空間,因此最後一個按鈕在屏幕之外。

我能想到的解決方案2中針對此問題:

  • 使用的LinearLayout與權重爲每個按鈕:

    <LinearLayout 
         android:layout_width="match_parent" 
         android:layout_height="wrap_content" 
         android:orientation="horizontal"> 
    
         <Button 
          android:layout_width="0dp" 
          android:layout_height="wrap_content" 
          android:layout_margin="8dp" 
          android:layout_weight="1.0" /> 
    
         <Button 
          android:layout_width="0dp" 
          android:layout_height="wrap_content" 
          android:layout_margin="8dp" 
          android:layout_weight="1.0" /> 
    
    </LinearLayout> 
    

    可以過,當然這是通過編程。 更多關於重量的信息可以在這裏找到:https://developer.android.com/guide/topics/ui/layout/linear.html

  • 使用流程佈局。它會自動檢查您的視圖是否適合當前行,並在沒有足夠空間時將它們放入下一個視圖。一個很好的開源庫我用我自己是這樣的一個:https://github.com/ApmeM/android-flowlayout

+0

的認爲這是我使用佈局充氣服務,就像你說的 我不能添加按鈕和按鍵的文字是不同勢(長度)每次我啓動應用程序(我從字符串數組中挑選一些隨機文本) - 就像一個測驗 – Nima

+0

正如我所說,你也可以通過編程來實現。看到這個問題:http://stackoverflow.com/questions/3224193/set-the-layout-weight-of-a-textview-programmatically – rubengees