2011-10-31 103 views
1

我正在为我的一款游戏创建最终分数屏幕。Android基本版面调整

我一直在布置与文本“原始分数”“奖励积分”和“最终得分”的布局文本的麻烦。

无论出于何种原因,如果我排列在布局编辑器中的文本,如图所示,它在电话上变得很好。如果我将文本排列在布局编辑器中,那么它将在电话上偏移。

  • 是否有可靠的方法让Eclipse布局编辑器和我的手机达成一致?
  • 有没有一种可靠的方法,使这种布局在 不同尺寸和像素密度的手机上正确对齐?

如果有问题,我使用全屏主题。如果需要,我也可以发布剩余的xml。

Correct Desired display on phone

Layout editor's view, malaligned

下面是相关的xml:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout android:orientation="vertical" xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="fill_parent"> 

     <LinearLayout android:orientation="vertical" android:id="@+id/FinalTally_Layout" android:background="@drawable/layoutbackgroundlarge" android:layout_weight="1" android:visibility="visible" android:layout_width="wrap_content" android:layout_height="95dp"> 

      <LinearLayout android:id="@+id/linearLayout2" android:layout_width="fill_parent" android:layout_height="wrap_content"> 
       <TextView android:textColor="#FF000000" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text=" Raw Score" android:id="@+id/RawScoreLabel" android:gravity="left|center_vertical" android:textSize="22dp" android:layout_weight="1"></TextView> 
       <TextView android:textColor="#FF000000" android:layout_height="wrap_content" android:layout_width="fill_parent" android:text="3200 " android:id="@+id/RawScore" android:gravity="right|center_vertical" android:textSize="22dp" android:layout_weight="1"></TextView> 
      </LinearLayout> 

      <LinearLayout android:id="@+id/linearLayout3" android:layout_width="fill_parent" android:layout_height="wrap_content"> 
       <TextView android:textColor="#FF000000" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1" android:text=" Bonus Points" android:id="@+id/BonusPointsLabel" android:gravity="left|center_vertical" android:textSize="22dp"></TextView> 
       <TextView android:textColor="#FF000000" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="1900 " android:layout_weight="1" android:id="@+id/BonusPoints" android:gravity="right|center_vertical" android:textSize="22dp"></TextView> 
      </LinearLayout> 

      <LinearLayout android:id="@+id/linearLayout6" android:layout_width="fill_parent" android:layout_height="wrap_content"> 
       <TextView android:textColor="#FF000000" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text=" Final Score" android:layout_weight="1" android:id="@+id/FinalScoreReportLabel" android:gravity="left|center_vertical" android:textSize="22dp" android:textStyle="bold"></TextView> 
       <TextView android:textColor="#FF000000" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="5100 " android:layout_weight="1" android:id="@string/FinalScoreReport" android:gravity="right|center_vertical" android:textSize="22dp" android:textStyle="bold"></TextView> 
      </LinearLayout> 

     </LinearLayout> 


</LinearLayout> 

回答

3

阿伦,

,而不是使该节的背景图像的该分频器一部分,则可以动态地通过用所需的背景颜色插入View产生细线这样。

尝试...

<LinearLayout android:orientation="vertical" android:id="@+id/FinalTally_Layout" android:background="@drawable/layoutbackgroundlarge" android:layout_weight="1" android:visibility="visible" android:layout_width="wrap_content" android:layout_height="95dp"> 

     <LinearLayout android:id="@+id/linearLayout2" android:layout_width="fill_parent" android:layout_height="wrap_content"> 
      <TextView android:textColor="#FF000000" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text=" Raw Score" android:id="@+id/RawScoreLabel" android:gravity="left|center_vertical" android:textSize="22dp" android:layout_weight="1"></TextView> 
      <TextView android:textColor="#FF000000" android:layout_height="wrap_content" android:layout_width="fill_parent" android:text="3200 " android:id="@+id/RawScore" android:gravity="right|center_vertical" android:textSize="22dp" android:layout_weight="1"></TextView> 
     </LinearLayout> 

     <LinearLayout android:id="@+id/linearLayout3" android:layout_width="fill_parent" android:layout_height="wrap_content"> 
      <TextView android:textColor="#FF000000" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1" android:text=" Bonus Points" android:id="@+id/BonusPointsLabel" android:gravity="left|center_vertical" android:textSize="22dp"></TextView> 
      <TextView android:textColor="#FF000000" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="1900 " android:layout_weight="1" android:id="@+id/BonusPoints" android:gravity="right|center_vertical" android:textSize="22dp"></TextView> 
     </LinearLayout> 

     <View android:layout_height="1px" android:layout_width="fill_parent"android:background="#90909090"/> 

     <LinearLayout android:id="@+id/linearLayout6" android:layout_width="fill_parent" android:layout_height="wrap_content"> 
      <TextView android:textColor="#FF000000" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text=" Final Score" android:layout_weight="1" android:id="@+id/FinalScoreReportLabel" android:gravity="left|center_vertical" android:textSize="22dp" android:textStyle="bold"></TextView> 
      <TextView android:textColor="#FF000000" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="5100 " android:layout_weight="1" android:id="@string/FinalScoreReport" android:gravity="right|center_vertical" android:textSize="22dp" android:textStyle="bold"></TextView> 
     </LinearLayout> 

    </LinearLayout> 

1

布局编辑器是靠不住的。总之,没有办法让他们同意。随你在手机上看到的一样。

如果我可能会提供一些建议,请尽可能使用RelativeLayout而不是嵌套LinearLayouts。