在Android中扩展

时间:2011-03-09 17:08:56

标签: android layout screen resolution aspect-ratio

我最近一直在尝试为Android应用编写一个布局。起初我用一个真正的手机调试它,布局看起来还不错。但是后来我尝试在模拟器上运行它但是在不同的分辨率上。然后它不适合屏幕。宽度看起来很好,但高度不是。我的手机分辨率为480x800。它与宽高比有什么关系吗?我在dp中拥有所有尺寸。一些模拟器的分辨率看起来很好,但有些则没有。 Android不应该自行扩展吗?

看看布局文件:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
 <RelativeLayout
  android:id="@+id/RelativeLayout1"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  >
  <LinearLayout
       android:orientation="vertical"
       android:layout_width="0px"
          android:layout_height="0px"
          android:focusable="true"
          android:focusableInTouchMode="true"/>
  <EditText
   android:id="@+id/SetAddr"
   android:layout_width="fill_parent"
   android:layout_height="wrap_content"
   android:text="@string/StartServer">
  </EditText> 
  <LinearLayout
   android:orientation="horizontal"
   android:id="@+id/LinearLayout2"
   android:layout_width="fill_parent"
   android:layout_height="wrap_content"
   android:layout_below="@id/SetAddr"
   android:gravity="center_horizontal">
   <Button
    android:id="@+id/PingStart"
    android:layout_width="@dimen/StartButtonWidth"
    android:layout_height="@dimen/StartButtonHeight"
    android:layout_below="@id/SetAddr"
    android:text="@string/Start"
   />

   <Button
    android:id="@+id/PingStop"
    android:layout_width="@dimen/StopButtonWidth"
    android:layout_height="@dimen/StopButtonHeight"
    android:layout_below="@id/SetAddr"
    android:layout_toRightOf="@id/PingStart"
    android:text="@string/Stop"
   />   
  </LinearLayout>
  <TextView

   android:id="@+id/PingResults"
   android:layout_width="@dimen/ResultsViewWidth"
   android:layout_height="@dimen/ResultsViewHeight"
   android:layout_below="@id/LinearLayout2"
   android:textColor="#000"
   android:background="#FFF"
   android:layout_centerHorizontal="true"
   android:scrollbars="vertical"
   />
  <LinearLayout
   android:orientation="horizontal"
   android:id="@+id/LinearLayout3"
   android:layout_width="fill_parent"
   android:layout_height="wrap_content"
   android:layout_below="@id/PingResults"
   android:gravity="center_horizontal">

   <Button 
    android:id="@+id/PingStartTrace"
    android:layout_width="@dimen/OptionButtonWidth"
    android:layout_height="@dimen/OptionButtonHeight"
    android:text="@string/Trace" >
   </Button>   
   <Button 
    android:id="@+id/PingStartLookup"
    android:layout_width="@dimen/OptionButtonWidth"
    android:layout_height="@dimen/OptionButtonHeight"
    android:layout_toRightOf="@id/PingStartTrace"
    android:text="@string/Lookup" >
   </Button>
   <Button 
    android:id="@+id/PingStartWebget"
    android:layout_width="@dimen/OptionButtonWidth"
    android:layout_height="@dimen/OptionButtonHeight"
    android:layout_toRightOf="@id/PingStartLookup"
    android:text="@string/WebGet" >
   </Button>
   <Button 
    android:id="@+id/PingStartOptions"
    android:layout_width="@dimen/OptionButtonWidth"
    android:layout_height="@dimen/OptionButtonHeight"
    android:layout_toRightOf="@id/PingStartWebget"
    android:text="@string/Options" >
   </Button>   
  </LinearLayout>   
 </RelativeLayout>    
</LinearLayout>

Dimens文件:

<resources>
    <dimen name="StartButtonHeight">50dp</dimen>
    <dimen name="StartButtonWidth">250dp</dimen>
    <dimen name="StopButtonHeight">50dp</dimen>
    <dimen name="StopButtonWidth">60dp</dimen>
    <dimen name="ResultsViewWidth">290dp</dimen>
    <dimen name="ResultsViewHeight">330dp</dimen>
    <dimen name="OptionButtonHeight">50dp</dimen> 
    <dimen name="OptionButtonWidth">75dp</dimen>       
</resources>

在某些分辨率上,我只看到一半的textview,下面没有按钮。

0 个答案:

没有答案