2017-04-23 5 views
-2

私はアンドロイドでGridLayoutをやろうとしましたが、ボタンが等しくなるようにしていませんでした。私はレイアウトを3つに分割し、3つのボタンとボタンを表示しますすべての画面が表示されます。 誰かがコードを教えてくれますか?Androidのレイアウトは見つかりませんでした

+0

これまでに行ったコードを記入してください。 – deejay

+0

私はちょうどRelativeLayoutをして、私はボタンを内部に入れましたが、うまくいきませんでした。 – mat

+0

なぜRelativeLayoutを使用していますか? – deejay

答えて

0

あなたのXMLでこれを試してください。

<?xml version="1.0" encoding="utf-8"?> 
<GridView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/gridview" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:columnWidth="90dp" 
    android:numColumns="auto_fit" 
    android:verticalSpacing="10dp" 
    android:horizontalSpacing="10dp" 
    android:stretchMode="columnWidth" 
    android:gravity="center" 
/> 

これにより、各列に等しい幅のグリッドビューが作成されます。必要な数にnumColumnsを指定して列数を設定できます。

LinearLayoutを使用するには、子ビューのLayout_weightを等しい値に設定できます。

<LinearLayout 
    android:id="@+id/linearLayout" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 
<TextView 
    android:id="@+id/tv1" 
    android:layout_width="0dp" 
    android:layout_height="match_parent" 
    android:layout_weight = "1"/> 

<TextView 
    android:id="@+id/tv2" 
    android:layout_width="0dp" 
    android:layout_height="match_parent" 
    android:layout_weight = "1"/> 

<TextView 
    android:id="@+id/tv3" 
    android:layout_width="0dp" 
    android:layout_height="match_parent" 
    android:layout_weight = "1"/> 
</LinearLayout> 

あなたはただ単に子供にlayout_weightを設定し、子ビューで0dpする幅や高さを設定することを忘れないでください親のレイアウトにweightSumを設定する必要はありません。

水平の場合はlayout_width0dp、垂直の場合はlayout_height0dpと設定します。もう一方をmatch_parentまたはwrap_contentに設定してください。

+0

ありがとうございました! – mat

+0

もし私がweighsumを使ってLinearLayoutでそれをしたいのであれば、画面をeqalusに3分割する方法は? – mat

+0

はい、これにもLinearLayoutを使用できます。答えに短いxmlコードを追加します。 – deejay

関連する問題