2017-02-07 186 views
0

我想構建一個簡單的Android應用程序。模擬器上的 網格完美地顯示按鈕,但是當將應用安裝到我的移動設備時,網格看起來很可怕。
下面是XML文件:網格佈局顯示不正確

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:id="@+id/activity_main" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:paddingBottom="@dimen/activity_vertical_margin" 
android:paddingLeft="@dimen/activity_horizontal_margin" 
android:paddingRight="@dimen/activity_horizontal_margin" 
android:paddingTop="@dimen/activity_vertical_margin" 
tools:context="com.modysoft.gridlayoutdemo.MainActivity"> 

<GridLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <Button 
     android:text="Good Morning" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_column="0" 
     android:layout_row="0" 
     android:layout_gravity="fill" 
     android:layout_columnWeight="1" 
     android:onClick="Buttontapped" 
     android:layout_rowWeight="1" 

     android:id="@+id/goodmorning" /> 

    <Button 
     android:text="Good Evening" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_column="1" 
     android:layout_row="0" 
     android:layout_gravity="fill" 
     android:layout_columnWeight="1" 
     android:layout_rowWeight="1" 
     android:onClick="Buttontapped" 
     android:id="@+id/goodevening" /> 

    <Button 
     android:text="HI/Bye" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_column="0" 
     android:layout_row="1" 
     android:layout_gravity="fill" 
     android:layout_columnWeight="1" 
     android:layout_rowWeight="1" 
     android:onClick="Buttontapped" 
     android:id="@+id/hibye" /> 

    <Button 
     android:text="Good Bye" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_column="1" 
     android:layout_row="1" 
     android:layout_gravity="fill" 
     android:layout_columnWeight="1" 
     android:layout_rowWeight="1" 
     android:onClick="Buttontapped" 
     android:id="@+id/goodbye" /> 

    <Button 
     android:text="Please" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_column="0" 
     android:layout_row="2" 
     android:layout_gravity="fill" 
     android:layout_columnWeight="1" 
     android:layout_rowWeight="1" 
     android:onClick="Buttontapped" 
     android:id="@+id/please" /> 

    <Button 
     android:text="Thank You &#10; Very Much" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_column="1" 
     android:layout_row="2" 
     android:layout_gravity="fill" 
     android:layout_columnWeight="1" 
     android:layout_rowWeight="1" 
     android:onClick="Buttontapped" 
     android:id="@+id/thankyou" /> 

    <Button 
     android:text="Welcome" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_column="0" 
     android:layout_row="3" 
     android:layout_gravity="fill" 
     android:layout_columnWeight="1" 
     android:layout_rowWeight="1" 
     android:onClick="Buttontapped" 
     android:id="@+id/welcome" /> 

    <Button 
     android:text="How are you?" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_column="1" 
     android:layout_row="3" 
     android:layout_gravity="fill" 
     android:layout_columnWeight="1" 
     android:layout_rowWeight="1" 
     android:onClick="Buttontapped" 
     android:id="@+id/howareyou" /> 

</GridLayout> 

this how shown in mobile

this how shown in emulator

+0

給出更多詳細信息...關於您的設備? – PN10

+0

三星Note 3。 –

+0

嘗試將'android:layout_height ='wrap_content''替換爲'android:layout_height =「0dp」'到列中的所有'button' – Naz141

回答

1

你可以達到你所期望的一樣,而無需使用<GridLayout>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:id="@+id/activity_main" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:paddingBottom="@dimen/activity_vertical_margin" 
android:paddingLeft="@dimen/activity_horizontal_margin" 
android:paddingRight="@dimen/activity_horizontal_margin" 
android:paddingTop="@dimen/activity_vertical_margin"> 

<LinearLayout 
    android:orientation="vertical" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 
    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_weight="1" 
     android:layout_height="0dp"> 
     <Button 
      android:text="Good Morning" 
      android:layout_width="0dp" 
      android:layout_weight="1" 
      android:layout_height="match_parent" 
      android:onClick="Buttontapped" 
      android:id="@+id/goodmorning" /> 
     <Button 
      android:text="Good Evening" 
      android:layout_width="0dp" 
      android:layout_weight="1" 
      android:layout_height="match_parent" 
      android:onClick="Buttontapped" 
      android:id="@+id/goodevening" /> 
    </LinearLayout> 
    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_weight="1" 
     android:layout_height="0dp"> 
     <Button 
      android:text="Good Bye" 
      android:layout_width="0dp" 
      android:layout_weight="1" 
      android:layout_height="match_parent" 
      android:onClick="Buttontapped" 
      android:id="@+id/goodbye" /> 
     <Button 
      android:text="HI/Bye" 
      android:id="@+id/hibye" 
      android:layout_width="0dp" 
      android:layout_weight="1" 
      android:layout_height="match_parent" 
      android:onClick="Buttontapped"/> 
    </LinearLayout> 
    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_weight="1" 
     android:layout_height="0dp"> 
     <Button 
      android:text="Please" 
      android:layout_width="0dp" 
      android:layout_weight="1" 
      android:layout_height="match_parent" 
      android:onClick="Buttontapped" 
      android:id="@+id/please" /> 
     <Button 
      android:text="Thank You &#10; Very Much" 
      android:id="@+id/thankyou" 
      android:layout_width="0dp" 
      android:layout_weight="1" 
      android:layout_height="match_parent" 
      android:onClick="Buttontapped"/> 
    </LinearLayout> 
    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_weight="1" 
     android:layout_height="0dp"> 

     <Button 
      android:text="Welcome" 
      android:layout_width="0dp" 
      android:layout_weight="1" 
      android:layout_height="match_parent" 
      android:onClick="Buttontapped" 
      android:id="@+id/welcome" /> 
     <Button 
      android:text="How are you?" 
      android:id="@+id/howareyou" 
      android:layout_width="0dp" 
      android:layout_weight="1" 
      android:layout_height="match_parent" 
      android:onClick="Buttontapped"/> 
    </LinearLayout> 
</LinearLayout> 

+0

完美工作,謝謝 –

+0

太好了! Upvote :) :) – Naz141

+0

我已經做了,但...感謝您的反饋!記錄下名聲低於15的人的投票記錄,但不要更改公開顯示的帖子分數。 –